× Linguagem de Programação ADVPL

Perguntas MATA103 Problema ao incluir Nota de Entrada

Mais
11 anos 1 dia 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
11 anos 9 horas 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 11 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.091 segundos
Joomla templates by a4joomla