Exemplo do Ponto de Entrada OSAGRCAR.
Exemplo do Ponto de Entrada:
//Bibliotecas #Include "Protheus.ch" #Include "TopConn.ch" /*---------------------------------------------------------------------* | P.E.: OSAGRCAR | | Desc: Função executada após aglutinação de carga (gravar E1) | | Link: http://tdn.totvs.com/pages/releaseview.action?pageId=6091373 | *---------------------------------------------------------------------*/ User Function OSAGRCAR() Local aArea := GetArea() Local aDados := ParamIXB Local cCargaOri := aDados[1][1][1] Local cCargaDes := aDados[2] Local cQuery := "" DbSelectArea("SE1") SE1->(DbSetOrder(1)) SE1->(DbGoTop()) //Montando a consulta pegando os recnos dos títulos que tem essa carga cQuery := " SELECT " cQuery += " SE1.R_E_C_N_O_ AS RECNUM, SE1.E1_PEDIDO,SE1.E1_PREFIXO " cQuery += " FROM " cQuery += " "+RetSQLName("SE1")+" SE1 " cQuery += " WHERE " cQuery += " E1_FILIAL = '"+FWxFilial('SE1')+"' " cQuery += " AND E1_X_CGORI = '"+cCargaOri+"' " cQuery += " AND SE1.D_E_L_E_T_ = '' " TCQuery cQuery New Alias "QRY_CAR" //Enquanto houver regitros While !QRY_CAR->(EoF()) SE1->(DbGoTo(QRY_CAR->RECNUM)) //Gravando a carga nova RecLock('SE1', .F.) E1_X_CGDES := cCargaDes SE1->(MsUnlock()) QRY_CAR->(DbSkip()) EndDo QRY_CAR->(DbCloseArea()) RestArea(aArea) Return
Observações:
– Caso tenha dúvidas ou problemas com os exemplos, entre em contato;
– Se tiver sugestões de rotinas, pode entrar em contato;