× Linguagem de Programação ADVPL

Perguntas MATA103 Problema ao incluir Nota de Entrada

Mais
10 anos 7 meses atrás #22303 por angeloprotti1
Boa tarde Senhores

Estou com um probleminha na minha rotina para inclusão de nota de entrada na rotina automática..

São 2 situações ..

Se eu incluir adicionando o numero da CTE ({'F1_CHVNFE' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,aPre[len(aPre), 9],''),NIL},; ),
ele acusa erro que o numero é invalido aDanfe[13] .. e eu preciso adicionar esse campo..

Outro item que acusa o mesmo problema é o campo da TES Ex.(//{'D1_TES' ,"143" ,NIL},;)
acusa TES invalida.. se eu retirar esses dois campos da lista, ele inclui a nota de entrada normalmente.. até com o campo TES, não sei de onde ele busca..

Poderiam me auxiliar nesse caso ?

Segue o Fonte , Muito obrigado !

#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"


/*
Função utilizada para inclusão de pré-nota do Frete (FRTLOG)
*/

User Function tMt140(aPre, lRet)

Local nOpc := 0
private aCabec := {}
private aItens := {}
private aItem := {}
private aLinha := {}
Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
Private lAutoErrNoFile := .F.

//Private lPcNfe := GETMV("MV_PCNFE") // Guarda o conteudo do parametro
PutMV("MV_PCNFE",'F') // Torca para .F. permitindo entrada de nf sem pedido de compras


GRFRETE(aCabec, aItem,aPre)

AADD(aItens,aItem)

lMSHelpAuto := .T.
lMSErroAuto := .F.
nOpc := 3
MSExecAuto({|x,y,z| MATA103(x,y,z)}, aCabec, aItens, nOpc)

//MATA140

If lMsErroAuto
MostraErro()
Retorn := '2'
Else
Retorn := '1'
EndIf

PutMV("MV_PCNFE",'T')


Return (Retorn)


Static Function GRFRETE (aCabec, aItem,aPre)
Local cTes

IF (LEN(ALLTRIM(aPre[len(aPre), 9]))==44) //CTE

cTes := "155"

ELSE

IF ALLTRIM(Posicione("SA2",1,xFilial("SA2")+aPre[len(aPre), 6]+aPre[len(aPre), 7],"A2_MUN")) == "CAMPINAS"

cTes := "153"

ELSE

cTes := "143"

ENDIF

ENDIF


aCabec := {{'F1_TIPO' ,aPre[len(aPre), 1] ,NIL},;
{'F1_FORMUL' ,aPre[len(aPre), 2] ,NIL},;
{'F1_DOC' ,aPre[len(aPre), 3] ,NIL},;
{'F1_SERIE' ,aPre[len(aPre), 4] ,NIL},;
{'F1_EMISSAO' ,aPre[len(aPre), 5] ,NIL},;
{'F1_FORNECE' ,aPre[len(aPre), 6] ,NIL},;
{'F1_LOJA' ,aPre[len(aPre), 7] ,NIL},;
{'F1_EST' ,aPre[len(aPre), 8] ,NIL},;
{'F1_DTDIGIT' ,dDataBase ,NIL},;
{'F1_RECBMTO' ,dDatabase ,NIL},;
{'F1_ESPECIE' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,'CTE','NFS') ,NIL},;
{'F1_COND' ,'001' ,NIL},;
{'F1_ZZCHFRE' ,aPre[len(aPre), 12] ,NIL}}

//{'F1_ESPECIE' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,'CTE','NFS') ,NIL},;
//{'F1_CHVNFE' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,aPre[len(aPre), 9],''),NIL},;


aItem := {}
aItem := {{'D1_COD' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,'607000004','603000087') ,NIL},;
{'D1_UM' ,'UN' ,NIL},;
{'D1_CF' ,IIF(LEN(ALLTRIM(aPre[len(aPre), 9]))==44,'1352',IIF(aPre[len(aPre), 8]=='SP','1933','2933')) ,NIL},;
{'D1_LOJA' ,aPre[len(aPre), 7] ,NIL},;
{'D1_SERIE' ,aPre[len(aPre), 4] ,NIL},;
{'D1_CONTA' ,'501010101030023' ,NIL},;
{'D1_QUANT' ,1.00 ,NIL},;
{'D1_VUNIT' ,aPre[len(aPre), 10] ,NIL},;
{'D1_TOTAL' ,aPre[len(aPre), 10] ,NIL},;//VALOR
{'D1_ITEMCTA' ,aPre[len(aPre), 11] ,NIL},;
{'D1_CC' ,'60301' ,NIL}}
// {'D1_PEDIDO' ,'030107' ,NIL},;
//{'D1_ITEMPC' ,'0001' ,NIL},;
//{'D1_TES' ,"143" ,NIL},;
//{'D1_TESCLA' ,"143" ,NIL},;

Return

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 7 meses atrás #22311 por angeloprotti1
Um detalhe interessante é que na pré nota de entrada ele gera com todas as informações que preciso na nota de entrada..

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 7 meses atrás #22362 por angeloprotti1
Descobri, eu estava fazendo os testes na base de homologação e há um parâmetro ativo na produção (copia da base e binarios..) que estava .T. e ele checava se era válida a chave do CTE..
o Problema era o TSS que não estava configurado no homolog, então gerava o problema, corrigindo isso até a TES funcionou normalmente..
Obrigado Galera
Um abraço

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.074 segundos
Joomla templates by a4joomla