Perguntas Colocar um filtro de serie para cada empresa/filial ao emitir a NFe.

Mais
12 anos 11 meses atrás - 12 anos 11 meses atrás #18197 por davidjackpaiva
Bom dia amigos do MasterAdvpl.

Tenho instalado o Protheus 11.8 serie 3 e com 3 filiais/empresas, e na parte final de preparação de pedido de venda para documento de saida devemos escolher a serie da Nfe. Acho que deveria haver um filtro para cada filial, pois, acontece de o pessoal do faturamento escolher a serie errada, dai vem aquele trabalho de consertar a "cagada". Achei isso uma @%$#@, por que o sistema é bom demais, mas nao pensaram nisso.

Pensei em criar uma tabela para cadastrar as serie que cadas filial poderá enxergar no momento da preparação do pedido de venda.

Campo[Fili]: para cadastrar o numero da filial
Campo[Serie]: para cadastrar a serie que a filial enxergará.

Alguem tem alguma outra ideia do que fazer?? E como colocar o filtro naquela janela de series??????

Desde ja agradeço a todos que responderem.
Ultima edição: 12 anos 11 meses atrás por davidjackpaiva.

Por favor Acessar ou Registrar para participar da conversa.

Mais
12 anos 11 meses atrás #18205 por kanaamlrr
David,
Aqui utilizamos o PE SX5NOTA
Segue um exemplo:
User Function SX5NOTA

Local cEmpr := SM0->M0_CODIGO+SM0->M0_CODFIL
Private lret := .F.

IF cEmpr == '0101' .and. alltrim(x5_chave) == "02"
        lret:=.T.
ELSEIF cEmpr == '0201' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0301' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0501' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0502' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0601' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0701' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0801' .and. alltrim(x5_chave) == "1"
        lret:=.T. 
ELSEIF cEmpr == '0801' .and. alltrim(x5_chave) == "2"
        lret:=.T.        
ELSEIF cEmpr == '0901' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '0902' .and. alltrim(x5_chave) == "2"
        lret:=.T.
ELSEIF cEmpr == '1001' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '1101' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '1102' .and. alltrim(x5_chave) == "3"
        lret:=.T.
ELSEIF cEmpr == '1103' .and. alltrim(x5_chave) == "4"
        lret:=.T.                                    
ELSEIF cEmpr == '1104' .and. alltrim(x5_chave) == "6"
        lret:=.T.        
ELSEIF cEmpr == '1105' .and. alltrim(x5_chave) == "5"
        lret:=.T.        
ELSEIF cEmpr == '1201' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '1202' .and. alltrim(x5_chave) == "2"
        lret:=.T.
ELSEIF cEmpr == '1203' .and. alltrim(x5_chave) == "3"
        lret:=.T.
ELSEIF cEmpr == '9901' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF cEmpr == '1301' .and. alltrim(x5_chave) == "1"
        lret:=.T.
ELSEIF alltrim(x5_chave) == "900"
        lret:=.T.
ELSEIF alltrim(x5_chave) == "999"
        lret:=.T.
EndIf

return(lret)

No caso usamos a chave da sx5 que é a série da nota para validar se irá retornar no sequencial ou não.
Faz um teste ai.

Por favor Acessar ou Registrar para participar da conversa.

Mais
12 anos 11 meses atrás #18244 por davidjackpaiva
Muitissimo obrigado Kanaãm

Fiz o teste no pedido de venda e deu certo.

Sabe se este PE tambem vai ser executado no Venda Direta(FATA701)??

Por favor Acessar ou Registrar para participar da conversa.

Mais
12 anos 11 meses atrás #18255 por kanaamlrr
Cara, não posso te dar certeza pois não utilizo essa rotina aqui, mas imagino que sim.

Por favor Acessar ou Registrar para participar da conversa.

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