aNFEcab := {; {'F1_TIPO' ,'N' ,NIL},; {'F1_FORMUL' ,'S' ,NIL},; {'F1_EMISSAO',dDataBase ,NIL},; {'F1_FORNECE',Padr(cFornece,nTamForn," "),NIL},; {'F1_LOJA' ,"01" ,NIL},; {'F1_ESPECIE','SPED' ,NIL},; {'F1_COND' ,'001' ,NIL} } for i := 1 to len(aNFSitens) AADD(aNFEitens,{{'D1_COD' ,Padr(aNFSitens[i,1],nTamCodPro," "),NIL}}) AADD(aNFEitens,{{'D1_TES' ,PADR("164",nTamTES," "),NIL}}) AADD(aNFEitens,{{'D1_UM' ,PADR(aNFSitens[i,2],nTamUM," "),NIL}}) AADD(aNFEitens,{{'D1_QUANT' ,aNFSitens[i,3] ,NIL}}) AADD(aNFEitens,{{'D1_VUNIT' ,aNFSitens[i,4] ,NIL}}) AADD(aNFEitens,{{'D1_TOTAL' ,aNFSitens[i,5] ,NIL}}) AADD(aNFEitens,{{'D1_LOCAL' ,aNFSitens[i,6] ,NIL}}) next i if len(aNFEcab) > 0 .and. len(aNFEitens) > 0 fGoEmp("01","02") MSExecAuto({|x,y,z| MATA140(x,y,z)}, aNFEcab, aNFEitens, 3) if lMsErroAuto MostraErro() else lProcessou := .T. endif fGoEmp("01","01") endif if lPRocessou MsgInfo("Processamento efetuado com sucesso, verifique a nota fiscal incluída.") endif oDlg:End() Return lRet //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Static Function fGoEmp(cCodEmp, cCodFil) Local aArea := GetArea() cFilAnt := cCodFil If !SM0->(dbSeek(cCodEmp+cFilAnt)) Final("Erro ao rodar a função - Empresa: " + cCodEmp + " Filial: " + cCodFil) EndIf cNumEmp := SM0->M0_Codigo+SM0->M0_CodFil RestArea(aArea)