Histórico da Página
01. DADOS GERAIS
Produto: | TOTVS Backoffice |
---|---|
Linha de Produto: | Linha Protheus |
Segmento: | Backoffice |
Módulo: | SIGAFAT - Faturamento |
Função: | MATA461 - Documento de Saída |
02. DESCRIÇÃO
Este ponto de entrada permite escolher se haverá ou não a quebra do Documento de Saída e é chamado quando o sistema não pré-determina que há uma quebra.
O ponto de entrada é executado ao gerar o documento de saída.
03. SINTAXE
M460QUEB
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
...
Versões: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Espanhol , Inglês |
Ponto de entrada criado para que seja possível escolher se haverá ou não a quebra do documento de saída.
O ponto de entrada só é chamado quando o sistema não pré-determina que há uma quebra.
Os parâmetros são acessíveis pela array pública PARAMIXB.
O ponto de entrada é executado ao gerar o documento de saída.
...
MATA461.PRX
...
( [ cAlias ], [ aPvlNfs ] ) --> lQuebra
...
04. PARÂMETROS
Os parâmetros são acessíveis pela array pública PARAMIXB.
...
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|
...
aParamIXB |
...
Character | Alias da tabela com os itens liberados (SC9) |
...
[ 1 ] - cAlias | |||
aParamIXB | Array |
...
Array com os seguintes campos como {C9_PEDIDO,C9_ITEM,C9_SEQUEN,C9_QTDLIB,Preco Venda,C9_PRODUTO, |
...
|
...
Reg.SB2, Reg.SF4} [ 2 ] - aPvlNfs |
05. RETORNO
Retorno |
---|
...
Tipo | Descrição | Obrigatório |
---|---|---|
lRet | Lógico | Variável lógica indicando se |
...
haverá a quebra ou não, sendo: .T. - Continua. .F. - Não Continua. | Sim |
06. EXEMPLO
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#INCLUDE 'PROTHEUS.CH' #
************************
User Function M460QUEB()
************************
Local lQuebra := .F.
Local cAlias := ""
Local aPvlNfs := {}
Local nX := 1
cAlias := ParamIxb[01]
aPvlNfs := If(Len(ParamIxb[02]) <> 0 , aClone(ParamIxb[02]),{})
/*
aPvlNfs Array com os seguintes campos como
{ C9_PEDIDO ,; //01
C9_ITEM ,; //02
C9_SEQUEN ,; //03
C9_QTDLIB ,; //04
nPrcVen ,; //05
C9_PRODUTO ,; //06
F4ISS=="S" ,; //07
C9RECNO ,; //08
C5RECNO ,; //09
C6RECNO ,; //10
E4RECNO ,; //11
B1RECNO ,; //12
B2RECNO ,; //13
F4RECNO ,; //14
B2_LOCAL ,; //15
0 ,; //16 - Compatibilidade (Não Usado)
C9_QTDLIB2}) //17
*/
For nX := 1 To Len(aPvlNfs)
SB1->(DbGoTo(aPvlNfs[nX,12]))
lQuebra := If(Upper(Alltrim(SB1->B1_TIPO )) == "PA",.T.,lQuebra)
//Caso em algum dos itens do pedidos de venda tenha produto com o tipo "PA" é retornardo a quebra como Verdadeiro
If lQuebra
Exit
EndIf
Next
Return(lQuebra) . Observações |