Tenho a função:
Static Function IncluiPedEx(aItACols)
Local nX
Local aCabec := {}
Local aItens := {}
Local cItemPed := "00"
Local _nLeitura := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_LEITURA"})
Local _nQtdVen := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_QTDVEN"})
Local _nTes := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_TES"})
Local _nPedCli := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_PEDCLI"})
Local _nValDes := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_VALDESC"})
Local _nIdOport := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_IDOPORT"})
Local _nUM := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_UM"})
Local _nPrUnit := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_PRUNIT"})
Local _nPrcVen := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_PRCVEN"})
Local _nDescont := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_DESCONT"})
Local _nEntreg := AScan(aHeader,{|x| AllTrim(x[2]) == "C6_ENTREG"})
Private lMsErroAuto := .F.
//Cabeçalho do Pedido de Venda
AAdd(aCabec ,{"C5_FILIAL" , M->C5_FILIAL ,Nil}) //Filial
AAdd(aCabec ,{"C5_CLIENTE" , M->C5_CLIENTE ,Nil}) //Cód Cliente
AAdd(aCabec ,{"C5_LOJACLI" , M->C5_LOJACLI ,Nil}) //Loja Cliente
AAdd(aCabec ,{"C5_TIPO" , M->C5_TIPO ,Nil}) //Tipo do Pedido (N - Pedido Normal)
AAdd(aCabec ,{"C5_TIPOCLI" , M->C5_TIPOCLI ,Nil}) //Tipo do Cliente (F - Consumidor Final)
AAdd(aCabec ,{"C5_EMISSAO" , M->C5_EMISSAO ,Nil}) //Emissão
AAdd(aCabec ,{"C5_CONDPAG" , M->C5_CONDPAG ,Nil}) //Condição de Pagamento
AAdd(aCabec ,{"C5_TPFRETE" , M->C5_TPFRETE ,Nil}) //Tipo de Frete (C = CIF / F = FOB)
AAdd(aCabec ,{"C5_FRETE" , M->C5_FRETE ,Nil}) //Valor do Frete
AAdd(aCabec ,{"C5_CARTAO" , M->C5_CARTAO ,Nil}) //Num Cartão
AAdd(aCabec ,{"C5_ADMCART" , M->C5_ADMCART ,Nil}) //Administradora do Cartão
AAdd(aCabec ,{"C5_IDTRANS" , M->C5_IDTRANS ,Nil}) //Id da Transação do Cartão
AAdd(aCabec ,{"C5_CODAUT" , M->C5_CODAUT ,Nil}) //Cod de Autorização da Transação
AAdd(aCabec ,{"C5_NSU" , M->C5_NSU ,Nil}) //NSU da Transação
AAdd(aCabec ,{"C5_OBSERVA" , M->C5_OBSERVA ,Nil}) //Observação do Pedido
AAdd(aCabec ,{"C5_PEDSITE" , M->C5_PEDSITE ,Nil}) //Numero de Pedido Site
AAdd(aCabec ,{"C5_PEDORIG" , M->C5_PEDORIG ,Nil}) //Origem do Pedido Site
AAdd(aCabec ,{"C5_ENDENT" , M->C5_ENDENT ,Nil}) //Endereço Entrega
AAdd(aCabec ,{"C5_NROENT" , M->C5_NROENT ,Nil}) //Numero End Entrega
AAdd(aCabec ,{"C5_COMPENT" , M->C5_COMPENT ,Nil}) //Complemento End Entrega
AAdd(aCabec ,{"C5_BAIRENT" , M->C5_BAIRENT ,Nil}) //Bairro End Entrega
AAdd(aCabec ,{"C5_CODMENT" , M->C5_CODMENT ,Nil}) //Cod Municipio End Entrega
AAdd(aCabec ,{"C5_MUNENT" , M->C5_MUNENT ,Nil}) //Municipio End Entrega
AAdd(aCabec ,{"C5_ESTENT" , M->C5_ESTENT ,Nil}) //Estado End Entrega
AAdd(aCabec ,{"C5_CEPENT" , M->C5_CEPENT ,Nil}) //Cep End Entrega
AAdd(aCabec ,{"C5_DESPESA" , M->C5_DESPESA ,Nil}) //Valor Despesa
AAdd(aCabec ,{"C5_INDPRES" , M->C5_INDPRES ,Nil}) //Presença Comprador
AAdd(aCabec ,{"C5_VEND1" , M->C5_VEND1 ,Nil}) //Vendedor
AAdd(aCabec, {"C5_MENNOTA" , M->C5_MENNOTA ,Nil}) //Mensagem para Nota
AAdd(aCabec ,{"C5_NATUREZ" , M->C5_NATUREZ ,Nil}) //Natureza
For nX := 171 to Len(aItACols)
//Itens do Pedido de Venda - Itens Excedidos
aLinha := {}
cItemPed := Soma1(cItemPed)
//Itens do PV
AAdd(aLinha ,{"C6_ITEM" , cItemPed ,Nil}) //Item do Pedido
AAdd(aLinha ,{"C6_LEITURA" , aItACols[nX][_nLeitura] ,Nil}) //Leitura
AAdd(aLinha ,{"C6_QTDVEN" , aItACols[nX][_nQtdVen] ,Nil}) //Quantidade Venda
AAdd(aLinha ,{"C6_TES" , aItACols[nX][_nTes] ,Nil}) //Tes
AAdd(aLinha ,{"C6_PEDCLI" , aItACols[nX][_nPedCli] ,Nil}) //Pedido Site
AAdd(aLinha ,{"C6_VALDESC" , aItACols[nX][_nValDes] ,Nil}) //Valor Desconto
AAdd(aLinha ,{"C6_IDOPORT" , aItACols[nX][_nIdOport] ,Nil}) //ID Oportunidade (Sales Force)
AAdd(aLinha ,{"C6_UM" , aItACols[nX][_nUM] ,Nil}) //Unidade - Obrigatório colocar esse campo para não dar problemas com o campo UNIDADE no momento da devolução de vend
AAdd(aLinha ,{"C6_PRUNIT" , aItACols[nX][_nPrUnit] ,Nil}) //Valor unitario
AAdd(aLinha ,{"C6_PRCVEN" , aItACols[nX][_nPrcVen] ,Nil}) //Preço
AAdd(aLinha ,{"C6_DESCONT" , aItACols[nX][_nDescont] ,Nil})
AAdd(aLinha ,{"C6_ENTREG" , aItACols[nX][_nEntreg] ,Nil}) //DATA DE ENTREGA - POD
Aadd(aItens, aLinha)
If nX == Len(aItACols) .OR. nX == 340 .OR. nX == 510 .OR. nX == 680 .OR. nX == 850 .OR. nX == 1020 //Limite de itens por faturamento ou quando chegar ao fim dos itens
MsExecAuto({|x,y,z| MATA410(x,y,z)}, aCabec, aItens, 3)//Executa o ExecAuto.
If lMsErroAuto
lInclui := .F.
aItens := {}
cItemPed := "00"
Else
lInclui := .T.
aItens := {}
cItemPed := "00"
EndIf
EndIf
Next nX
Return lInclui
Que ao ser executada tenho o retorno de erro:
Tabela SC5 19/02/2025 16:59:17
Filial - C5_FILIAL := 06
Cliente - C5_CLIENTE := 276723 < -- Invalido
Loja - C5_LOJACLI := 01
Tipo Pedido - C5_TIPO := N
Tipo Cliente - C5_TIPOCLI := F
DT Emissao - C5_EMISSAO := 19/02/2025
Cond. Pagto - C5_CONDPAG := 006
Tipo Frete - C5_TPFRETE := C
Frete - C5_FRETE := 0
Num Cartao - C5_CARTAO :=
Adm Cartao - C5_ADMCART :=
Id Transacao - C5_IDTRANS :=
Cod Aut - C5_CODAUT :=
NSU - C5_NSU :=
Observacao - C5_OBSERVA :=
Pedido Site - C5_PEDSITE :=
Origem Ped - C5_PEDORIG :=
End.Entrega - C5_ENDENT :=
No. Endereco - C5_NROENT :=
Compl.Entreg - C5_COMPENT :=
Bairro Entr. - C5_BAIRENT :=
Cod.Mun.Entr - C5_CODMENT :=
Mun. Entrega - C5_MUNENT :=
Est.Entrega - C5_ESTENT :=
CEP Entrega - C5_CEPENT :=
Despesa - C5_DESPESA := 0
Presenca Com - C5_INDPRES := 0
Vendedor 1 - C5_VEND1 := VD0002
Mens.p/ Nota - C5_MENNOTA := TESTE 180ITENS
Natureza - C5_NATUREZ := 2101001
Erro --> Ocorreu um erro durante a validacao:
type mismatch on {|| if(aCols[n,Len(aCols[n])], 12632256, 16777215)} line : 423
Called from REFRESH line : 0
Called from A410RECALC line : 1250
Called from EVALVALID line : 1171
Called from ENCHAUTO line : 368
Called from A410INCLUI line : 1287
Called from MBROWSEAUTO line : 86
Called from MATA410 line : 137
Called from {|X,Y,Z| MATA410(X,Y,Z)} line : 376
Called from MSEXECAUTO line : 3136
Called from INCLUIPEDEX line : 376
Called from U_MT410TOK line : 223
Called from EXECBLOCK line : 165
Called from A410VLDTOK line : 93
Called from {||NOPCA:=1,IF(A410VLDTOK(NOPC,ARECNOSE1RA) .AND. OGETD:TUDOOK(),IF(!OBRIGATORIO(AGETS,ATELA),NOPCA:=0,ODLG:END()),NOPCA:=0)} line : 3264
Called from SAFEEVAL line : 7060
Called from {|| ( LOKOK:=IF(LMESSAGEDEL,IIF(FINDFUNCTION("APMSGYESNO"), APMSGYESNO(OEMTOANSI(FWI18NLANG("MSLIB","STR0014",14)), OEMTOANSI(FWI18NLANG("MSLIB","STR0015",15))), (CMSGYESNO:="MSGYESNO", &CMSGYESNO.(OEMTOANSI(FWI18NLANG("MSLIB","STR0014",14)), OEMTOANSI(FWI18NLANG("MSLIB","STR0015",15))))), .T. ),LOK:=IF(LOKOK,(REGOTO(NREG,CALIAS),SAFEEVAL(BOK)), .F. ),EVALRETOK(LOK,NBAR),IF(TYPE("INCLUI") = "L" .AND. __NNIVELBAR == 0 .AND. (VALTYPE(LOK) <> "L" .OR. LOK),__LLOOP := INCLUI,)) } line : 996
Called from {|| EVAL(BOK) } line : 416
Called from ACTIVATE line : 0
Called from A410COPIA line : 3264
Called from A410PCOPIA line : 2895
Called from EXECUTE line : 1169
Called from {|| OSELF:EXECUTE("A410PCOPIA", 6, 0,"COPIAR", 7,"('SC5',SC5->(RECNO()),4)","COPIAR","", 7) } line : 579
Called from ACTIVATE line : 0
Called from ACTIVATE line : 700
Called from BROWSEDEF line : 344
Called from MATA410 line : 159
Called from __EXECUTE line : 735
Called from MDIEXECUTE line : 924
--------------------------------------------------------------------------------
Poderiam compartilhar possíveis soluções?