- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Preencher NF de entrada com 9 digitos
×
Linguagem de Programação ADVPL
Perguntas Preencher NF de entrada com 9 digitos
- renan_tec
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 17
- Obrigados Recebidos: 0
11 anos 3 meses atrás #16992
por renan_tec
Preencher NF de entrada com 9 digitos foi criado por renan_tec
Ola amigos,
sou novo em ADVPL e preciso de uma ajuda de algum colega.
Nas NF de entrada eu gostaria de colocar um ponto de entrada ou um gatilho ainda não sei como fazer para preencher as NF do tipo "SPED" com 9 dígitos, pois caso o usuário digite uma quantidade inferior à "9" ele preencha o restante com "0".
Alguém poderia me dar uma força de como fazer isso? não sei fazer
Obrigado galera.
sou novo em ADVPL e preciso de uma ajuda de algum colega.
Nas NF de entrada eu gostaria de colocar um ponto de entrada ou um gatilho ainda não sei como fazer para preencher as NF do tipo "SPED" com 9 dígitos, pois caso o usuário digite uma quantidade inferior à "9" ele preencha o restante com "0".
Alguém poderia me dar uma força de como fazer isso? não sei fazer
Obrigado galera.
Por favor Acessar ou Registrar para participar da conversa.
- andre_rocha
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 37
- Obrigados Recebidos: 0
11 anos 3 meses atrás #16996
por andre_rocha
Respondido por andre_rocha no tópico Preencher NF de entrada com 9 digitos
O P.E. que você deve utilizar é o MT100TOK.
Abra sua rotina de documento de entrada, identifique qual o nome do campo do número da NF através da tecla F1. Deve ser CALGUMACOISA.
Seu PE deve ter um codigo que altere a variável M->CALGUMACOISA onde está digitado o numero da NF.
A função pra fazer o que voce quer deve ser mais ou menos assim:
Right('000000000'+Alltrim(CALGUMACOISA),9)
Espero ter ajudado.
Abra sua rotina de documento de entrada, identifique qual o nome do campo do número da NF através da tecla F1. Deve ser CALGUMACOISA.
Seu PE deve ter um codigo que altere a variável M->CALGUMACOISA onde está digitado o numero da NF.
A função pra fazer o que voce quer deve ser mais ou menos assim:
Right('000000000'+Alltrim(CALGUMACOISA),9)
Espero ter ajudado.
Por favor Acessar ou Registrar para participar da conversa.
- jean.luckesi
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 45
- Obrigados Recebidos: 0
11 anos 2 meses atrás #17258
por jean.luckesi
Respondido por jean.luckesi no tópico Preencher NF de entrada com 9 digitos
Tenho uma funcao em um ponto de entrada que preenche pra voce os 9 digitos com zero a esquerda depois que confirma. Se tiver 1234 ele vai gravar 000001234.
Por favor Acessar ou Registrar para participar da conversa.
- kenazfs
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 43
- Obrigados Recebidos: 0
11 anos 2 meses atrás #17298
por kenazfs
Respondido por kenazfs no tópico Preencher NF de entrada com 9 digitos
Opa, boa tarde
segue código para fazer o que você esta precisando.
VALIDAÇÃO COM PREENCHIMENTOS DE ZEROS NO NUMERO DA NOTA FISCAL DE ENTRADA
Eval({|| cNFiscal := If(Val(cNFiscal) > 0, StrZero(Val(cNFiscal), TamSXG("018")[1]), CriaVar("F1_DOC", .F.)), .T.})
Acessar o modulo do configurador e copiar essa string para a validação do usuário, nos campos F1_DOC e F1_ESPECIE;
segue código para fazer o que você esta precisando.
VALIDAÇÃO COM PREENCHIMENTOS DE ZEROS NO NUMERO DA NOTA FISCAL DE ENTRADA
Eval({|| cNFiscal := If(Val(cNFiscal) > 0, StrZero(Val(cNFiscal), TamSXG("018")[1]), CriaVar("F1_DOC", .F.)), .T.})
Acessar o modulo do configurador e copiar essa string para a validação do usuário, nos campos F1_DOC e F1_ESPECIE;
Por favor Acessar ou Registrar para participar da conversa.
- Victor
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 171
- Obrigados Recebidos: 0
11 anos 2 meses atrás #17309
por Victor
Respondido por Victor no tópico Preencher NF de entrada com 9 digitos
Brother segue o ponto de entrada ja montado para você.
#include 'Protheus.ch'
User Function VldF1Doc()
cNfiscal := strzero(val(m->cnfiscal),TamSX3("F1_DOC")[1])
cSerie := strzero(val(m->cserie),TamSX3("F1_SERIE")[1])
Return(.t.)
nos campos F1_DOC E F1_SERIE, no inicializador padrão chame o u_VldF1Doc()
abraços !
#include 'Protheus.ch'
User Function VldF1Doc()
cNfiscal := strzero(val(m->cnfiscal),TamSX3("F1_DOC")[1])
cSerie := strzero(val(m->cserie),TamSX3("F1_SERIE")[1])
Return(.t.)
nos campos F1_DOC E F1_SERIE, no inicializador padrão chame o u_VldF1Doc()
abraços !
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Preencher NF de entrada com 9 digitos
Tempo para a criação da página:0.105 segundos