Perguntas Ponto de entrada

Mais
3 anos 1 mês atrás #33010 por rodrigo.melo2018
Prezado, boa tarde.

Eu tenho no módulo de compras duas rotinas:

-MATA103
-MATA121

Eu criei um campo na rotina MATA121, chamado C7_x_nat, onde o comprador digita a natureza da compra no pedido.
Eu quero levar essa informação para a rotina MATA103 no campo CNATUREZA, só que esse campo é uma array @CNATUREZA, conforme código fonte.

Eu vi que o ponto de entrada MT103NTZ, é possível fazer por ele ou tem outra sugestão para isto, por favor.

Por favor Acessar ou Registrar para participar da conversa.

Mais
3 anos 1 mês atrás #33011 por admin
Respondido por admin no tópico Ponto de entrada
Brother o cNatureza é uma variavel local, você não vai conseguir alimenta-la.

Uma Sugestão, cria um ponto de entrada após a gravação da nota fiscal, segue um exemplo:

Ai vc altera a SE2.(Veja se funfa ai, nem testei)

#include "rwmake.ch"
#include "tbiconn.ch"
#INCLUDE "topconn.ch"
User Function Sf1100i()

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Guarda situacao inicial ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

Local _cAli := Alias()
Local _nOrd := IndexOrd()
Local _nRec := Recno()
Local _CALI2
Local _NORD2
Local _NREC2
Local _cNum := SF1->F1_DOC
Local _cPrefixo := SF1->F1_SERIE
Local _cFornec := SF1->F1_FORNECE + SF1->F1_LOJA
Local _nOrdSA2 := SA2->( IndexOrd())

//Posiciona no primeiro item do Rateio
SD1->( DBSETORDER(1)) //D1_FILIAL+D1_DOC+D1_SERIE+D1_FORNECE+D1_LOJA+D1_COD+D1_ITEM
IF SD1->( DBSEEK( XFILIAL("SD1") + _cNum + _cPrefixo + _cFornec ))
cNaturez := ''
If SC7->(dbSetOrder(1), dbSeek(xFilial("SC7")+SD1->D1_PEDIDO))
cNaturez := SC7->C7_X_NAT
Endif

dbSelectArea("SE2")
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Guarda situacao SE2 ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
_cAli2 := Alias()
_nOrd2 := IndexOrd()
_nRec2 := Recno()
SE2->(DbSetOrder(6))
SE2->(DbSeek(xFilial("SE2") + _cFornec + _cPrefixo + _cNum))
While SE2->(!Eof()) .And. SE2->E2_FORNECE + SE2->E2_LOJA == _cFornec .And. SE2->E2_PREFIXO == _cPrefixo .And. SE2->E2_Num == _cNum
If RecLock("SE2",.F.)
SE2->E2_NATUREZ := cNaturez
SE2->(MsUnlock())
Endif

SE2->(dbSkip(1))
Enddo

dbSelectArea(_cAli2)
dbSetOrder(_nOrd2)
dbGoTo(_nRec2)
ENDIF

Return Nil

Por favor Acessar ou Registrar para participar da conversa.

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