Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

NomeTipo

Descrição

cArmazemCaractere

Armazém para o qual está sendo solicitado saldo.

cEnderecoCaractere

Endereço para o qual está sendo solicitado saldo.¹

cProdutoCaractereProduto para o qual está sendo solicitado saldo.
cPrdOriCaractereProduto origem para o qual está sendo solicitado saldo.
cLoteCtlCaractere

Lote para o qual está sendo solicitado o saldo

cNumLoteCaractereSublote para o qual está sendo solicitado o saldo
lCnsPkgFutLógicoIndica se deve ser considerado Entradas Previstas no calculo do saldo disponível.
cCodCliCaractereCódigo do cliente da Ordem de Serviço executada.

¹ Somente estará preenchido quando for informado no Pedido de Venda.

...

CampoValor

DC3_ORDEM

Ordem da estrutura na sequência de abastecimento do produto.
D14_ENDERCódigo do endereço
D14_ESTFISCódigo da estrutura física
D14_LOTECTLote
D14_NUMLOTSublote
D14_DTVALDData de validade do lote²
D14_NUMSERNúmero de série
D14_QTDLIBQuantidade disponível em estoque
D14_SALDOQuantidade disponível em estoque, descontando a saída prevista
D14_QTDSPRQuantidade de saída prevista
D14_IDUNITIdentificador do unitizador
D14_CODUNICódigo do tipo de unitizador
BE_STATUSStatus do endereço

² A data de validade somente se aplica aos produtos que controlam lote; nos demais casos poderá ser retornado espaço em branco neste campo.

06. VERSÕES

Protheus 12.1.17 e ou superiores.

07. OBSERVAÇÃO

Todos os parâmetros são recebidos na User Function via PARAMIXB, conforme consta em Execblock / Customização.

08. EXEMPLO

...

languagexml
titleExemplo
linenumberstrue
collapsetrue

...

------

#INCLUDE "PROTHEUS.CH"

...

User

...

Function

...

WMSQYSEP()

...


Local

...

cArmazem

...

:=

...

PARAMIXB[1]

...


Local

...

cEndereco

...

:=

...

PARAMIXB[2]

...


Local

...

cProduto

...

:=

...

PARAMIXB[3]

...


Local

...

cPrdOri

...

:=

...

PARAMIXB[4]

...


Local

...

cLoteCtl

...

:=

...

PARAMIXB[5]

...


Local

...

cNumLote

...

:=

...

PARAMIXB[6

...

]
Local lCnsPkgFut := PARAMIXB[7]
Local cCodCli := PARAMIXB[8]
Local cQuery := ""
Local cAliasD14 := GetNextAlias()
Local aTamSX3 := TamSx3("D14_QTDEST")

...


cQuery

...

:=

...

"SELECT

...

DC3_ORDEM,"

...


cQuery

...

+=

...

"

...

D14_ENDER,"

...


cQuery

...

+=

...

"

...

D14_ESTFIS,"

...


cQuery

...

+=

...

"

...

D14_LOTECT,"

...


cQuery

...

+=

...

"

...

D14_NUMLOT,"

...


cQuery

...

+=

...

"

...

D14_DTVALD,"

...


cQuery

...

+=

...

"

...

D14_NUMSER,"

...



If lCnsPkgFut ==

...

.T.

...


           cQuery +=

...

"

...

(D14_QTDEST+D14_

...

QTDEPR-(D14_QTDEMP+D14_QTDBLQ

...

))

...

D14_QTDLIB,"

...


           cQuery +=

...

"

...

(D14_QTDEST+D14_

...

QTDEPR-(D14_QTDEMP+D14_QTDBLQ+D14_QTDSPR))

...

D14_SALDO,"

...


Else
           cQuery += " (D14_QTDEST-(D14_QTDEMP+D14_QTDBLQ))

...

D14_QTDLIB,"

...


           cQuery +=

...

"

...

(D14_QTDEST-(D14_QTDEMP+D14_QTDBLQ+D14_QTDSPR))

...

D14_SALDO,"

...


EndIf

cQuery += " D14_QTDSPR,"

...


cQuery

...

+=

...

"

...

D14_IDUNIT,"

...


cQuery

...

+=

...

"

...

D14_CODUNI

...

,"
cQuery += " BE_STATUS"
cQuery += " FROM "+RetSqlName("D14")+"

...

D14"

...


cQuery

...

+=

...

"

...

INNER

...

JOIN

...

"+RetSqlName("DC3")+"

...

DC3"

...


cQuery

...

+=

...

"

...

ON

...

DC3.DC3_FILIAL

...

=

...

'"+xFilial("DC3")+"'"

...


cQuery

...

+=

...

"

...

AND

...

DC3.DC3_LOCAL

...

=

...

D14.D14_LOCAL"

...


cQuery

...

+=

...

"

...

AND

...

DC3.DC3_CODPRO

...

=

...

D14.D14_PRODUT"

...


cQuery

...

+=

...

"

...

AND

...

DC3.DC3_TPESTR

...

=

...

D14.D14_ESTFIS"

...


cQuery

...

+=

...

"

...

AND

...

DC3.D_E_L_E_T_

...

=

...

'

...

'"

...


cQuery

...

+=

...

"

...

INNER

...

JOIN

...

"+RetSqlName("DC8")+"

...

DC8"

...


cQuery

...

+=

...

"

...

ON

...

DC8.DC8_FILIAL

...

=

...

'"+xFilial("DC8")+"'"

...


cQuery

...

+=

...

"

...

AND

...

DC8.DC8_CODEST

...

=

...

D14.D14_ESTFIS"

...


cQuery

...

+=

...

"

...

AND

...

DC8.DC8_TPESTR

...

('1','2','3','4','6')"

...


cQuery

...

+=

...

"

...

AND

...

DC8.D_E_L_E_T_ = ' '"
cQuery += " INNER JOIN "+RetSqlName("SBE")+" SBE"
cQuery += " ON SBE.BE_FILIAL  = '"+xFilial("SBE")+"'"
cQuery += " AND SBE.BE_LOCAL   = D14.D14_LOCAL"
cQuery += " AND SBE.BE_LOCALIZ = D14.D14_ENDER"
cQuery += " AND SBE.D_E_L_E_T_

...

 =

...

 '

...

 '"

...


cQuery

...

+=

...

"

...

WHERE

...

D14.D14_FILIAL

...

=

...

'"+xFilial("D14")+"'"

...


cQuery

...

+=

...

"

...

AND

...

D14.D14_LOCAL

...

=

...

'"+cArmazem+"'"

...


cQuery

...

+=

...

"

...

AND

...

D14.D14_PRODUT

...

=

...

'"+cProduto+"'"

...


cQuery

...

+=

...

"

...

AND

...

D14.D14_PRDORI

...

=

...

'"+cPrdOri+"'"

...

//

...

Se

...

foi

...

informado

...

endereço,

...

lote

...

e/ou

...

sublote

...

na

...

inclusão

...

do

...

pedido

...


If

...

!Empty(cEndereco)

...


         cQuery +=

...

"

...

AND

...

D14.D14_ENDER

...

=

...

'"+cEndereco+"'"

...


EndIf

If !Empty(cLoteCtl)

...


         cQuery +=

...

"

...

AND

...

D14.D14_LOTECT

...

=

...

'"+cLoteCtl+"'"

...


EndIf

If !Empty(cNumLote)

...


         cQuery +=

...

"

...

AND

...

D14.D14_NUMLOT

...

=

...

'"+cNumLote+"'"

...


EndIf

cQuery +=

...

"

...

AND

...

(D14.D14_QTDEST-(D14.D14_QTDEMP+D14.D14_QTDBLQ))

...

>

...

0"

...


cQuery

...

+=

...

"

...

AND

...

D14.D_E_L_E_T_

...

=

...

'

...

'"

...


cQuery

...

:=

...

ChangeQuery(cQuery)

...

DbUseArea(.T.,'TOPCONN',TcGenQry(,,cQuery),cAliasD14,.F.,.T.)

...


//

...

Ajustando

...

o

...

tamanho

...

dos

...

campos

...

da

...

query

...


TcSetField(cAliasD14,'D14_DTVALD','D')

...


TcSetField(cAliasD14,'D14_QTDLIB','N',aTamSX3[1],aTamSX3[2])

...


TcSetField(cAliasD14,'D14_QTDSPR','N',aTamSX3[1],aTamSX3[2])

...


TcSetField(cAliasD14,'D14_QTDPEM','N',aTamSX3[1],aTamSX3[2])

...


TcSetField(cAliasD14,'D14_SALDO'

...

,'N',aTamSX3[1],aTamSX3[2])

...

Return

...

cAliasD14



Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>