Histórico da Página
...
Faz a manutenção na tabela wm-inventario
Atributo | Tipo | Formato |
Evolução | Obrigatório | Evolução |
Id-etiqueta
Decimal
>>>>>>>>>>>>>9
Identificador Etiqueta
Sim
202 wms
cod-estabel | Character | X(3) | Estabelecimento | Sim |
ems202. |
cod- |
local |
VarChar | X( |
3) |
Local | Sim |
ems202. |
dt- |
inventario |
Character
X(8)
Date | 99/99/9999 | Dt Inventario | Sim |
202wms
Cod-lote
Character
X(10)
Lote
Sim
202 wms
Dt-validade-lote
Date
99/99/9999
Data Validade Lote
Não
202wms
ems202. | |||||
idi-tip-invent | Integer | >9 | Tipo Inventário | Sim | ems202. |
ind-orig-invent | Integer | >9 | Origem Inventario | Sim | ems202. |
ind-sit-invent | Integer | >9 | Situação |
Sim |
202wms
Qtd-item
Decimal
>>>,>>>,>>9.9999
Qtd Item
Não
202wms
Qtd-peso
Decimal
>,>>>,>>9.9999
Peso
Sim
202wms
Cod-cliente
Integer
>>>>>>>>9
Código Cliente
Sim
202wms
Cod-embalagem
Character
X(10)
Embalagem
Sim
202wms
Nr-pedido
Integer
>>>,>>>,>>9
Nr. Pedido
Não
202wms
Cod-estabel-pedido
Character
X(3)
Estabelecimento Pedido
Não
202wms
Nr-pedcli
Character
X(12)
Nr Pedido Cliente
Não
202wms
Nome-abrev
Character
X(12)
Cliente
Sim
202wms
Nr-ord-prod
Integer
>>>,>>>,>>9
Ordem Produção
Não
202wms
Cod-estabel-ord
Character
X(3)
Estabelecimento OP
Não
202wms
Dt-geracao
Date
99/99/9999
Data Geração
Não
202wms
Hr-geracao
Integer
>>>>9
Hora Geração
Não
202wms
Dt-leitura
Date
99/99/9999
Data Leitura
Não
202wms
Cod-usuario
Character
X(12)
Usuário
Não
202wms
Id-agrupador
Decimal
>>>>>>>>>>>>>9
Identificador Agrupador
Sim
202wms
Ind-sit-agrupador
Integer
>9
Situação Agrupador
Sim
202wms
Id-carga
Decimal
>>>>>>>>>>>>>9
Identificador Carga
Sim
202wms
Log-impressa
Logical
Sim/não
Etiqueta Impressa
Não
202wms
Log-reportada
Logical
Sim/não
Etiqueta Reportada
Não
202wms
Ind-sit-estorno
Integer
>9
Situação Estorno
Sim
202wms
Log-rel-movto-etiqueta
Logical
Sim/não
Gera Relacionamento Movto Etiqueta
Sim
202wms
Qtd-item-retirado
Decimal
>>>,>>>,>>9.9999
Qtd Item Retirado
Não
202wms
Cod-usuario-ult-acesso
Character
X(12)
Usuário Ult. Acesso
Não
202wms
Dt-ult-acesso
Date
99/99/9999
Data Últ.Acesso
Não
202wms
Hr-ult-acesso
Integer
>>>>9
Hora Últ. Acesso
Não
202wms
Cod-lote-orig
Character
X(10)
Lote Original
Não
Dat-valid-orig
Date
99/99/9999
Dt Validade Original
Não
Log-item-sob-encomen
Logical
Sim/não
Sob Encomenda
Sim
Cod-serial
Character
X(50)
Serial
Sim
Log-confer
Logical
Sim/não
Etiqueta Conferida
Não
2.08
Métodos
Queries e Constraints
Definição das Queries (acesso ao banco de dados) e Contraints (regras de leitura) utilizadas para buscar grupos de registros da base de dados.
Método:
openQueryMain
Descrição:
Disponibiliza todos os saldos.
Método:
OpenQueryAgrupador
Descrição:
Busca os registro das etiquetas associadas a um agrupador.
Constraints Associados:
SetConstraintBox
Método:
SetConstraintAgrupador
Descrição:
ems202. | |||||
log-acerto-ce | Logical | Sim/não | Gera Acerto Estoque | Sim | ems202. |
log-gera-contag-ender-vazio | Logical | Sim/não | Gera Contagem Endereco Vazio | Sim | ems202. |
log-gera-contag-smte-ender-vazio | Logical | Sim/não | Gera Contagem Somente Endereco | Sim | ems202. |
num-seq-invent | Integer | >>>,>>9 | Num Invent | Sim | ems202. |
DEFINE TEMP-TABLE ttWm-inventario NO-UNDO LIKE wm-inventario.
DEFINE VARIABLE c-estabel-ini AS CHARACTER FORMAT "x(3)" NO-UNDO.
DEFINE VARIABLE c-estabel-fim AS CHARACTER FORMAT "x(3)" NO-UNDO.
DEFINE VARIABLE c-local-ini AS CHARACTER FORMAT "x(3)" NO-UNDO.
DEFINE VARIABLE c-local-fim AS CHARACTER FORMAT "x(3)" NO-UNDO.
DEFINE VARIABLE d-data-ini AS DATE FORMAT "99/99/9999" NO-UNDO.
DEFINE VARIABLE d-data-fim AS DATE FORMAT "99/99/9999" NO-UNDO.
Método: _PROCEDURE createInventario DBOProgram
Descrição:
Cria Inventário e retorna a sequencia do inventário criado.
Parâmetros:
DEFINE INPUT PARAMETER pCodEstabel AS CHAR NO-UNDO.
DEFINE INPUT PARAMETER pCodLocal AS CHAR NO-UNDO.
DEFINE INPUT PARAMETER pDtInventario AS DATE NO-UNDO.
DEFINE OUTPUT PARAMETER pNumSeqInvent AS INTE NO-UNDO.
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
---|---|---|---|---|---|---|
pCodEstabel | Character | (3) | X | Código da Doca | ||
pCodLocal | Character | (3) | X | Código Local | ||
pDtInventario | Date | 99/99/9999 | X | Data Inventário | ||
pNumSeqInvent | Integer | >9 | X | Sequencia do Inventário |
Queries e Constraints Métodos
Definição das Queries (acesso ao banco de dados) e Contraints (regras de leitura) utilizadas para buscar grupos de registros da base de dados.
Método:
openQueryMain
Descrição:
Disponibiliza todos os saldos.
Método:
OpenQueryEstabel
Descrição:
Busca os registro associadas a um Estabelecimento.
Constraints Associados:
Método:
Descrição:
Solicita informações para seleção.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
Método: findFirstMain
Descrição:
Posiciona a Tabela inventário no primeiro registro.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
Método: findLastMain
Descrição:
Posiciona a Tabela inventário no último registro.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
Método: findNextMain
Descrição:
Posiciona a Tabela inventário no próximo registro.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
Método: findPrevMain
Descrição:
Posiciona a Tabela inventário no registro anterior.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
Método: getCharField
Descrição:
Retorna o valor do campo alfanumerico.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
pFieldName | CHARACTER | X | Campo da tabela wm-inventario | |||
pFieldValue | CHARACTER | X | Retorna o valor do campo |
Método: getDateField
Descrição:
Retorna o valor do campo DateSolicita informações para seleção das etiquetas associadas ao agrupador.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
p-id-etiqueta
Dec
>>>>>>>>>>>>>9
X
Código da Etiqueta Agrupadora
Método:
OpenQueryAgrupadores
Descrição:
Busca os registro das etiquetas agrupadoras e agrupadoras própria.
Método:
OpenQueryCarga
Descrição:
Busca os registro das etiquetas pela carga.
Constraints Associados:
SetConstraintCarga
Método:
SetConstraintAgrupador
Descrição:
Solicita informações para seleção das etiquetas associadas a carga.
pFieldName | CHARACTER | X | Campo da tabela wm-inventario | |||
pFieldValue | DATE | X | Retorna o valor do campo |
Método: getDecField
Descrição:
Retorna o valor do campo Decimal.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
p-id-carga
Dec
>>>>>>>>>>>>>9
X
Código da Carga.
Método:
OpenQueryOP
Descrição:
Busca os registro das etiquetas pele estabelecimento da ordem e pelo numero da ordem de produção .
Constraints Associados:
SetConstraintOP
Método:
SetConstraintOP
Descrição:
Solicita informações para seleção das etiquetas associadas ao estabelecimento e ordem de produção.
pFieldName | CHARACTER | X | Campo da tabela wm-inventario | |||
pFieldValue | DECIMAL | X | Retorna o valor do campo |
Método: getIntField
Descrição:
Retorna o valor do campo Decimal.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
p-cod-estabel-ord
Char
x(5)
X
Estabelecimento
Método:
associaAgrupCarga
Descrição:
pFieldName | CHARACTER | X | Campo da tabela wm-inventario | |||
pFieldValue | DECIMAL | X | Retorna o valor do campo |
Método: getFirstInventSitInvMenor
Descrição:
Posiciona no primeiro inventário com situação menor 4 localizando atribui valores para os parâmetros:
pcod-estabel = wm-inventario.cod-estabel
pcod-local = wm-inventario.cod-local
pdt-inventario = wm-inventario.dt-inventario
pnum-seq-invent = wm-inventario.num-seq-inventO método consiste em associar um agrupador a uma carga. Só será possível a associação de uma etiqueta agrupadora, que já tenha sido reportada e que não esteja associada a nenhuma outra carga. Todas as etiquetas não-agrupadoras pertencentes à etiqueta agrupadora serão atualizadas com o usuário e o id-carga.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
pCodUsuario
Char
x(12)
X
Usuário
Serial Agrupador
Método:
associaNovaCarga
Descrição:
pcod-estabel | LIKE wm-inventario.cod-estabel | X | Estabelecimento | |||
pcod-local | LIKE wm-inventario.cod-local | X | Local | |||
pdt-inventario | LIKE wm-inventario.dt-inventario | X | Data Inventário | |||
pnum-seq-invent | LIKE wm-inventario.num-seq-invent | X | Sequencia do Inventário |
Método: getIndSitInventario
Descrição:
Este metodo foi desenvolvido com o objetivo de retornar a Situacao do Inventario,
para programas que nao trabalhem com abertura de query (ex: relatorios),
nao sendo possivel reposicionar a query (goToKey) e utilizar o metodo getIntFieldO método consiste em associar um agrupador a uma nova carga. Só será possível a associação de uma etiqueta agrupadora, que já tenha sido reportada. Todas as etiquetas não-agrupadoras pertencentes à etiqueta agrupadora serão atualizadas com o usuário e o id-carga.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
pSerialAgrup
Char
x(12)
X
Usuário
Novo Serial Carga
Método:
associaNovaCarga
Descrição:
pCodEstabel | LIKE wm-inventario.cod-estabel | X | Estabelecimento | |||
pCodLocal | LIKE wm-inventario.cod-local | X | Local | |||
pDtInventario | LIKE wm-inventario.dt-inventario | X | Data Inventário | |||
pNumSeqInvent | LIKE wm-inventario.num-seq-invent | X | Sequencia do Inventário | |||
pIndSitInvent | LIKE wm-inventario.ind-sit-invent | X |
Método: getIndSitInventario
Descrição:
Este metodo foi desenvolvido com o objetivo de retornar a Situacao do Inventario,
para programas que nao trabalhem com abertura de query (ex: relatorios),
nao sendo possivel reposicionar a query (goToKey) e utilizar o metodo getIntFieldO método consiste em associar um agrupador a uma nova carga. Só será possível a associação de uma etiqueta agrupadora, que já tenha sido reportada. Todas as etiquetas não-agrupadoras pertencentes à etiqueta agrupadora serão atualizadas com o usuário e o id-carga.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
pSerialAgrup
Dec
>>>>>>>>>>>>>9
X
Usuário
Novo Serial Carga
Método:
atualizaQtdEtiqueta
Descrição:
O método atualiza as quantidades que estão sendo retiradas no momento do picking.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerialQtd NO-UNDO
FIELD id-etiqueta LIKE wm-etiqueta.id-etiqueta
FIELD qtd-item-retirado LIKE wm-etiqueta.qtd-item-retirado.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pCodUsuario
...
Char
...
x(12)
...
X
...
...
...
Código do Usuário
...
ttSerialQtd
...
Table
...
X
...
...
...
Tabela Quantidade Serial
Método:
desassociaAgrupCarga
Descrição:
O método consiste em desassociar um agrupador de uma carga. Só será possível a desassociação de uma etiqueta, caso a carga não tenha sido enviada pelo MP e não esteja a carga vinculada à um documento (NF).
Todas as etiquetas não-agrupadoras pertencentes à etiqueta agrupadora serão atualizadas com o usuário e o id-carga = 0.
Parâmetros:
Parâmetro | Tipo | Formato | I | O | IO | Descrição |
pCodUsuario | Char | x(12) | X |
|
| Código do Usuário |
pSerialAgrup | Dec | >>>>>>>>>>>>>9 | X |
|
| Serial Agrupador |
Método:
desassociaEtiquetas
Descrição:
DESPALETIZAÇÃO (desmonta todo o pallet).
Requisitos:
Definição de temp-table:
DEFINE TEMP-TABLE RowErrors NO-UNDO
FIELD ErrorSequence AS INTEGER
FIELD ErrorNumber AS INTEGER
FIELD ErrorDescription AS CHARACTER
FIELD ErrorParameters AS CHARACTER
FIELD ErrorType AS CHARACTER
FIELD ErrorHelp AS CHARACTER
FIELD ErrorSubType AS CHARACTER
index seq ErrorSequence.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pCodUsuario
...
Char
...
x(12)
...
X
...
...
...
Código do Usuário
...
RowErrors
...
Table
...
X
...
...
Tabela de Erro
Método:
desassociaEtiquetasAgrup
Descrição:
Retira uma etiqueta não agrupa do pallet (despaletiza unitário).
Requisitos:
Definição de temp-table:
DEFINE TEMP-TABLE RowErrors NO-UNDO
FIELD ErrorSequence AS INTEGER
FIELD ErrorNumber AS INTEGER
FIELD ErrorDescription AS CHARACTER
FIELD ErrorParameters AS CHARACTER
FIELD ErrorType AS CHARACTER
FIELD ErrorHelp AS CHARACTER
FIELD ErrorSubType AS CHARACTER
index seq ErrorSequence.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
p-id-etiqueta
...
Char
...
>>>>>>>>>>>>>9
...
X
...
...
...
Serial Etiqueta
...
RowErrors
...
Table
...
X
...
...
Tabela de Erro
Método:
devolveQtdEtiqueta
Descrição:
O método devolve as quantidades que foram retiradas no momento do picking.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerialQtd NO-UNDO
FIELD id-etiqueta LIKE wm-etiqueta.id-etiqueta
FIELD qtd-item-retirado LIKE wm-etiqueta.qtd-item-retirado.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pCodUsuario
...
Char
...
x(12)
...
X
...
...
...
Código do Usuário
...
ttSerialQtd
...
Table
...
X
...
...
...
Tabela quantidade do serial
Método:
estornaEtiquetas
Descrição:
Se a etiqueta for de pallet, estorna ela da carga, se a etiqueta for de item, estorna ela do pallet.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerial NO-UNDO
FIELD de-serial AS DECIMAL.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
ttSerial
...
Table
...
X
...
...
...
Tabela Serial
...
c-serial
...
char
...
X
...
...
Tabela de resumo de ocupação
Método:
etiquetasAptasEstorno
Descrição:
O método consiste em retornar as etiquetas agrupadoras de itens que já foram lidos para estorno.
Este método será utilizado no momento em que se fizer estono de reporte de produção, onde será informada a quantidade a ser estornada. É informada a ordem de produção e o seu estabelecimento, e o método retorna todas as etiquetas agrupadoras aptas para estorno, com as suas respectivas quantidades. Os dados poderão ser tratados e apresentados da maneira que melhor atender às necessidades específicas.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pNrOrdProd
...
Int
...
>>>,>>>,>>9
...
X
...
...
...
Número da Ordem de Produção.
...
pCodEstabelOrd
...
char
...
X
...
...
...
Estabelecimento.
...
Método:
etiquetasAptasReporte
Descrição:
O método consiste em retornar as etiquetas agrupadoras de itens que ainda não foram reportadas. Este método será utilizado no momento de reporte de produção, onde será informada a quantidade produzida até o momento. É informada a ordem de produção e o seu estabelecimento, e o método retorna todas as etiquetas agrupadoras, com as suas respectivas quantidades. Os dados poderão ser tratados e apresentados da maneira que melhor atender às necessidades específicas.
Obs.: Não há necessidade de retornarem todas as etiquetas dos itens porque a etiqueta agrupadora tem todas as informações sobre o que está agrupando, inclusive peso e quantidade total.
Considerações: A ocorrência do atributo "ind-sit-estorno = 3" nas etiquetas que retornarem na TT, indica que a mesma já esteve em outra situação reportada à produção, e que, por algum motivo, foi estornada.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pNrOrdProd
...
Table
...
>>>,>>>,>>9
...
X
...
...
...
Número da Ordem de Produção.
...
pCodEstabelOrd
...
char
...
X
...
...
...
Estabelecimento.
...
Método:
etiquetasEstornadasRep
Descrição:
Após obter as informações sobre as etiquetas que podem serem estornadas do reporte de produção (pelo método etiquetasAptasEstorno) e efetuado o estorno, este método deve ser executado, retornando ao WMS quais das etiquetas foram efetivamente estornadas, para que elas sejam atualizadas de forma a não constarem em estorno de reporte futuro. Essas etiquetas têm seu status retornado para "não reportado".
Obs.: Todas as etiquetas que pertencerem ao agrupador estornado, também receberão o status de estornado.
Importante: As etiquetas recebidas na ttWm-etiqueta não são validadas novamente. A utilização correta deste método é precedida pela execução do método "etiquetasAptasEstorno", onde a integridade das etiquetas é garantida.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
etiquetasReportadas
Descrição:
Após obter as informações sobre as etiquetas que podem serem reportadas à produção (pelo método etiquetasAptasReporte) e efetuado o reporte, este método deve ser executado, retornando ao WMS quais das etiquetas foram efetivamente reportadas, para que elas sejam atualizadas de forma a não constarem em reporte futuro.
Obs.: Todas as etiquetas que pertencerem ao agrupador reportado, também receberão o status de reportadas.
Importante: As etiquetas recebidas na ttWm-etiqueta não são validadas novamente.
A utilização correta deste método é precedida pela execução do método "etiquetasAptasReporte", onde a integridade das etiquetas é garantida.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
excluiInutilizadas
Descrição:
O método consiste em excluir da entidade todas as etiquetas que por algum motivo não foram utilizadas pelo sistema. Neste caso todas as etiquetas com ind-leitura-etiqueta = 3 (inutilizado) e todas as etiquetas não agrupadoras que não estejam vinculadas a um agrupador.
Método:
formacaoAgrupador
Descrição:
O método consiste em formar o pallet ou desfazer.
O parâmetro i-opção pode receber os seguintes valores: 1 - A etiqueta é associada ao agrupador,
2 - A etiqueta é desassociada do agrupar e 3 - Todas as etiquetas são desassociadas do agrupador.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
geraAgrupEtiquetaLida
Descrição:
Gera etiqueta agrupadora de itens (itens com o status de lido). o método receberá uma Temp-Table com os seriais dos itens que serão agrupados por essa etiqueta agrupadora.
O atributo "id-agrupador" das etiquetas dos itens receberá o "id-etiqueta" da etiqueta agrupadora.
O método gera uma etiqueta de agrupador (ind-sit-agrupador = 2
/* AGRUPA ETIQUETAS */), e atualiza o id-agrupador das etiquetas passadas na TT.
A etiqueta é gerada com o status de lida (ind-leitura-etiqueta = 2 /* LIDA */), o que caracteriza o fechamento do pallet.
Os atributos de quantidade (item e peso) das etiquetas que serão agrupadas serão somados e o total gravado no registro da etiqueta agrupadora.
Os demais dados da etiqueta serão gerados com base em uma etiqueta de item pertencente ao agrupador gerado.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerial NO-UNDO
FIELD de-serial AS DECIMAL.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
ttSerial
...
Table
...
X
...
...
...
Tabela Serial
...
pSerialAgrup
...
Dec
...
X
...
...
Serial Agrupador
Método:
geraEtiquetaAgrupador
Descrição:
Gera etiqueta agrupadora.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerial NO-UNDO
FIELD de-serial AS DECIMAL.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pQtdEtiqueta
...
Int
...
X
...
...
...
Quantidade Etiqueta
...
ttSerial
...
Table
...
X
...
...
...
Tabela Serial
Método:
geraEtiquetaItemUnico
Descrição:
Gera etiquetas de item que ocupa 100% do agrupador.
É gerada uma etiqueta que identifica o item e o agrupador ao mesmo tempo.
O método gera uma etiqueta de item/agrupador (ind-sit-agrupador = 3
/* AGRUPADOR PRÓPRIO*/), com id-agrupador igual ao id-etiqueta gerado.
Consiste os dados passados na ttWm-etiqueta, porque trata-se de um item normal, com a diferença que o agrupador é o próprio item.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
geraEtiquetaItemUnicoNaoLido
Descrição:
Gera etiquetas de item que ocupa 100% do agrupador (mantas, no caso Vipal).
É gerada uma etiqueta que identifica o item e o agrupador ao mesmo tempo.
...
pCodEstabel | LIKE wm-inventario.cod-estabel | X | Estabelecimento | |||
pCodLocal | LIKE wm-inventario.cod-local | X | Local | |||
pDtInventario | LIKE wm-inventario.dt-inventario | X | Data Inventário | |||
pNumSeqInvent | LIKE wm-inventario.num-seq-invent | X | Sequencia do Inventário | |||
pIndSitInvent | LIKE wm-inventario.ind-sit-invent | X |
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getIntField DBOProgram
PROCEDURE getIntField :
/*------------------------------------------------------------------------------
Purpose: Retorna valor de campos do tipo inteiro
Parameters:
recebe nome do campo
retorna valor do campo
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pFieldName AS CHARACTER NO-UNDO.
DEFINE OUTPUT PARAMETER pFieldValue AS INTEGER NO-UNDO.
/*--- Verifica se temptable RowObject está disponível, caso não esteja será
retornada flag "NOK":U ---*/
IF NOT AVAILABLE RowObject THEN
RETURN "NOK":U.
CASE pFieldName:
WHEN "ind-sit-invent":U THEN ASSIGN pFieldValue = RowObject.ind-sit-invent.
WHEN "int-1":U THEN ASSIGN pFieldValue = RowObject.int-1.
WHEN "int-2":U THEN ASSIGN pFieldValue = RowObject.int-2.
WHEN "num-seq-invent":U THEN ASSIGN pFieldValue = RowObject.num-seq-invent.
OTHERWISE RETURN "NOK":U.
END CASE.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getInventario DBOProgram
PROCEDURE getInventario :
/*------------------------------------------------------------------------------
Purpose: Retornar temp-table com todos os inventarios não iniciados ou
em processo
Parameters:
Notes:
------------------------------------------------------------------------------*/
DEFINE OUTPUT PARAMETER TABLE FOR ttWm-inventario.
FOR EACH ttWm-inventario:
DELETE ttWm-inventario.
END.
FOR EACH wm-inventario WHERE
wm-inventario.ind-sit-invent < 3 NO-LOCK, /* ñ iniciados/processo */
/* --- Knupp - Movimentação Utilizando Etiquetas --- */
FIRST wm-local NO-LOCK WHERE
wm-local.cod-estabel = wm-inventario.cod-estabel AND
wm-local.cod-local = wm-inventario.cod-local AND
wm-local.log-utiliz-etiq-movto = YES:
CREATE ttWm-inventario.
BUFFER-COPY wm-inventario TO ttWm-inventario.
END.
RETURN 'OK':U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getKey DBOProgram
PROCEDURE getKey :
/*------------------------------------------------------------------------------
Purpose: Retorna valores dos campos do índice idx-inventario1
Parameters:
retorna valor do campo cod-estabel
retorna valor do campo cod-local
retorna valor do campo dt-inventario
retorna valor do campo num-seq-invent
Notes:
------------------------------------------------------------------------------*/
DEFINE OUTPUT PARAMETER pcod-estabel LIKE wm-inventario.cod-estabel NO-UNDO.
DEFINE OUTPUT PARAMETER pcod-local LIKE wm-inventario.cod-local NO-UNDO.
DEFINE OUTPUT PARAMETER pdt-inventario LIKE wm-inventario.dt-inventario NO-UNDO.
DEFINE OUTPUT PARAMETER pnum-seq-invent LIKE wm-inventario.num-seq-invent NO-UNDO.
/*--- Verifica se temptable RowObject está disponível, caso não esteja será
retornada flag "NOK":U ---*/
IF NOT AVAILABLE RowObject THEN
RETURN "NOK":U.
ASSIGN pcod-estabel = RowObject.cod-estabel
pcod-local = RowObject.cod-local
pdt-inventario = RowObject.dt-inventario
pnum-seq-invent = RowObject.num-seq-invent.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getLastInventario DBOProgram
PROCEDURE getLastInventario :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
DEF OUTPUT PARAM pcod-estabel LIKE wm-inventario.cod-estabel NO-UNDO.
DEF OUTPUT PARAM pcod-local LIKE wm-inventario.cod-local NO-UNDO.
DEF OUTPUT PARAM pdt-inventario LIKE wm-inventario.dt-inventario NO-UNDO.
FIND LAST wm-inventario WHERE
wm-inventario.ind-sit-invent >= 3 AND
wm-inventario.log-acerto-ce = YES NO-LOCK NO-ERROR.
IF AVAIL wm-inventario THEN
ASSIGN pcod-estabel = wm-inventario.cod-estabel
pcod-local = wm-inventario.cod-local
pdt-inventario = wm-inventario.dt-inventario.
ELSE
RETURN "NOK":U.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getLastInventarioAberto DBOProgram
PROCEDURE getLastInventarioAberto :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pCodEstabel LIKE wm-inventario.cod-estabel NO-UNDO.
DEFINE INPUT PARAMETER pCodLocal LIKE wm-inventario.cod-local NO-UNDO.
DEFINE OUTPUT PARAMETER pDtInventario LIKE wm-inventario.dt-inventario NO-UNDO.
DEFINE OUTPUT PARAMETER pNumSeqInvent LIKE wm-inventario.num-seq-invent NO-UNDO.
FIND LAST bf{&TableName}
WHERE bf{&TableName}.cod-estabel = pCodEstabel AND
bf{&TableName}.cod-local = pCodLocal AND
bf{&tablename}.ind-sit-invent < 4 /* NAO Atualizados */ NO-LOCK NO-ERROR.
IF AVAIL bf{&TableName} THEN
ASSIGN pDtInventario = bf{&TableName}.dt-inventario
pNumSeqInvent = bf{&TableName}.num-seq-invent.
ELSE
ASSIGN pDtInventario = TODAY
pNumSeqInvent = 0.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getLastInventSitInvIgual DBOProgram
PROCEDURE getLastInventSitInvIgual :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
DEF OUTPUT PARAM pcod-estabel LIKE wm-inventario.cod-estabel NO-UNDO.
DEF OUTPUT PARAM pcod-local LIKE wm-inventario.cod-local NO-UNDO.
DEF OUTPUT PARAM pdt-inventario LIKE wm-inventario.dt-inventario NO-UNDO.
DEF OUTPUT PARAM pnum-seq-invent LIKE wm-inventario.num-seq-invent NO-UNDO.
FIND LAST wm-inventario WHERE
wm-inventario.ind-sit-invent = 4 NO-LOCK NO-ERROR.
IF AVAIL wm-inventario THEN
ASSIGN pcod-estabel = wm-inventario.cod-estabel
pcod-local = wm-inventario.cod-local
pdt-inventario = wm-inventario.dt-inventario
pnum-seq-invent = wm-inventario.num-seq-invent.
ELSE
RETURN "NOK":U.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getLogField DBOProgram
PROCEDURE getLogField :
/*------------------------------------------------------------------------------
Purpose: Retorna valor de campos do tipo lógico
Parameters:
recebe nome do campo
retorna valor do campo
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pFieldName AS CHARACTER NO-UNDO.
DEFINE OUTPUT PARAMETER pFieldValue AS LOGICAL NO-UNDO.
/*--- Verifica se temptable RowObject está disponível, caso não esteja será
retornada flag "NOK":U ---*/
IF NOT AVAILABLE RowObject THEN
RETURN "NOK":U.
CASE pFieldName:
WHEN "log-1":U THEN ASSIGN pFieldValue = RowObject.log-1.
WHEN "log-2":U THEN ASSIGN pFieldValue = RowObject.log-2.
OTHERWISE RETURN "NOK":U.
END CASE.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getRawField DBOProgram
PROCEDURE getRawField :
/*------------------------------------------------------------------------------
Purpose: Retorna valor de campos do tipo raw
Parameters:
recebe nome do campo
retorna valor do campo
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pFieldName AS CHARACTER NO-UNDO.
DEFINE OUTPUT PARAMETER pFieldValue AS RAW NO-UNDO.
/*--- Verifica se temptable RowObject está disponível, caso não esteja será
retornada flag "NOK":U ---*/
IF NOT AVAILABLE RowObject THEN
RETURN "NOK":U.
CASE pFieldName:
OTHERWISE RETURN "NOK":U.
END CASE.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE getRecidField DBOProgram
PROCEDURE getRecidField :
/*------------------------------------------------------------------------------
Purpose: Retorna valor de campos do tipo recid
Parameters:
recebe nome do campo
retorna valor do campo
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pFieldName AS CHARACTER NO-UNDO.
DEFINE OUTPUT PARAMETER pFieldValue AS RECID NO-UNDO.
/*--- Verifica se temptable RowObject está disponível, caso não esteja será
retornada flag "NOK":U ---*/
IF NOT AVAILABLE RowObject THEN
RETURN "NOK":U.
CASE pFieldName:
OTHERWISE RETURN "NOK":U.
END CASE.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE goToKey DBOProgram
PROCEDURE goToKey :
/*------------------------------------------------------------------------------
Purpose: Reposiciona registro com base no índice idx-inventario1
Parameters:
recebe valor do campo cod-estabel
recebe valor do campo cod-local
recebe valor do campo dt-inventario
recebe valor do campo num-seq-invent
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pcod-estabel LIKE wm-inventario.cod-estabel NO-UNDO.
DEFINE INPUT PARAMETER pcod-local LIKE wm-inventario.cod-local NO-UNDO.
DEFINE INPUT PARAMETER pdt-inventario LIKE wm-inventario.dt-inventario NO-UNDO.
DEFINE INPUT PARAMETER pnum-seq-invent LIKE wm-inventario.num-seq-invent NO-UNDO.
FIND FIRST bfwm-inventario WHERE
bfwm-inventario.cod-estabel = pcod-estabel AND
bfwm-inventario.cod-local = pcod-local AND
bfwm-inventario.dt-inventario = pdt-inventario AND
bfwm-inventario.num-seq-invent = pnum-seq-invent NO-LOCK NO-ERROR.
/*--- Verifica se registro foi encontrado, em caso de erro será retornada flag "NOK":U ---*/
IF NOT AVAILABLE bfwm-inventario THEN
RETURN "NOK":U.
/*--- Reposiciona query através de rowid e verifica a ocorrência de erros, caso
existam erros será retornada flag "NOK":U ---*/
RUN repositionRecord IN THIS-PROCEDURE (INPUT ROWID(bfwm-inventario)).
IF RETURN-VALUE = "NOK":U THEN
RETURN "NOK":U.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE openQueryEstabel DBOProgram
PROCEDURE openQueryEstabel :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
OPEN QUERY {&QueryName} FOR EACH {&TableName} NO-LOCK
WHERE {&TableName}.cod-estabel >= c-estabel-ini
AND {&TableName}.cod-estabel <= c-estabel-fim
AND {&TableName}.cod-local >= c-local-ini
AND {&TableName}.cod-local <= c-local-fim
AND {&TableName}.dt-inventario >= d-data-ini
AND {&TableName}.dt-inventario <= d-data-fim
BY {&TableName}.cod-estabel INDEXED-REPOSITION.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE openQueryMain DBOProgram
PROCEDURE openQueryMain :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
OPEN QUERY {&QueryName} FOR EACH wm-inventario NO-LOCK INDEXED-REPOSITION.
RETURN 'OK':U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ReabreInventario DBOProgram
PROCEDURE ReabreInventario :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
IF NOT AVAIL RowObject THEN
RETURN "NOK":U.
EMPTY TEMP-TABLE rowErrors.
IF RowObject.ind-sit-invent = 4 /* Atualizado */ THEN DO:
{method/svc/errors/inserr.i
&ErrorNumber="4493"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="''"}
RETURN "NOK":U.
END.
IF RowObject.ind-sit-invent = 3 THEN DO:
ASSIGN RowObject.ind-sit-invent = 2. /* Em processo */
RUN UpdateRecord IN THIS-PROCEDURE.
IF RETURN-VALUE = "NOK":U THEN
RETURN "NOK":U.
END.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE setConstraintFaixa DBOProgram
PROCEDURE setConstraintFaixa :
/*------------------------------------------------------------------------------
Purpose:
Parameters: <none>
Notes:
------------------------------------------------------------------------------*/
def input param pi-estabel-ini as CHAR no-undo.
def input param pi-estabel-fim as CHAR no-undo.
def input param pi-local-ini as CHAR no-undo.
def input param pi-local-fim as CHAR no-undo.
def input param pi-data-ini as DATE no-undo.
def input param pi-data-fim as DATE no-undo.
assign c-estabel-ini = pi-estabel-ini
c-estabel-fim = pi-estabel-fim
c-local-ini = pi-local-ini
c-local-fim = pi-local-fim
d-data-ini = pi-data-ini
d-data-fim = pi-data-fim.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE validaNumeroContagem DBOProgram
PROCEDURE validaNumeroContagem :
/*------------------------------------------------------------------------------
Purpose: Validações da Contagem de Inventario
Parameters:
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pCodEstabel AS CHAR NO-UNDO.
DEFINE INPUT PARAMETER pCodLocal AS CHAR NO-UNDO.
DEFINE INPUT PARAMETER pDtInventario AS DATE NO-UNDO.
DEFINE INPUT PARAMETER pNumSeqInvent AS INTE NO-UNDO.
DEFINE INPUT PARAMETER pNumContagem AS INTE NO-UNDO.
RUN emptyRowErrors IN THIS-PROCEDURE.
IF pNumContagem <= 0
OR pNumContagem > 3 THEN
{method/svc/errors/inserr.i
&ErrorNumber="26840"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="''"}
FIND wm-inventario WHERE
wm-inventario.cod-estabel = pCodEstabel AND
wm-inventario.cod-local = pCodLocal AND
wm-inventario.dt-inventario = pDtInventario AND
wm-inventario.num-seq-invent = pNumSeqInvent NO-LOCK NO-ERROR.
IF NOT AVAIL wm-inventario THEN DO:
/* Inicio -- Projeto Internacional */
DEFINE VARIABLE c-lbl-liter-inventario AS CHARACTER NO-UNDO.
{utp/ut-liter.i "Inventário" *}
ASSIGN c-lbl-liter-inventario = TRIM(RETURN-VALUE).
{method/svc/errors/inserr.i
&ErrorNumber="56"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="c-lbl-liter-inventario"}
RETURN 'NOK':U.
END.
ELSE DO:
IF wm-inventario.ind-sit-invent >= 3 THEN
{method/svc/errors/inserr.i
&ErrorNumber="26838"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="''"}
IF wm-inventario.ind-sit-invent = 1
AND wm-inventario.num-seq-invent <> 1 THEN
{method/svc/errors/inserr.i
&ErrorNumber="26840"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="''"}
END.
IF CAN-FIND(FIRST RowErrors NO-LOCK) THEN
RETURN 'NOK':U.
RETURN 'OK':U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE validateRecord DBOProgram
PROCEDURE validateRecord :
/*------------------------------------------------------------------------------
Purpose: Validações pertinentes ao DBO
Parameters: recebe o tipo de validação (Create, Delete, Update)
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER pType AS CHARACTER NO-UNDO.
IF pType = "Create":U THEN DO:
FIND FIRST bfwm-inventario
WHERE bfwm-inventario.cod-estabel = RowObject.cod-estabel
AND bfwm-inventario.cod-local = RowObject.cod-local
AND bfwm-inventario.dt-inventario = RowObject.dt-inventario
AND bfwm-inventario.num-seq-invent = RowObject.num-seq-invent NO-LOCK NO-ERROR.
IF AVAIL bfwm-inventario THEN
/* Inicio -- Projeto Internacional */
DO:
DEFINE VARIABLE c-lbl-liter-inventario-2 AS CHARACTER NO-UNDO.
{utp/ut-liter.i "Inventário" *}
ASSIGN c-lbl-liter-inventario-2 = TRIM(RETURN-VALUE).
{method/svc/errors/inserr.i
&ErrorNumber="4242"
&ErrorType="EMS"
&ErrorSubType = "ERROR"
&ErrorParameters="c-lbl-liter-inventario-2"}
END.
END.
/*--- Verifica ocorrência de erros ---*/
IF CAN-FIND(FIRST RowErrors WHERE RowErrors.ErrorSubType = "ERROR":U) THEN
RETURN "NOK":U.
RETURN "OK":U.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
geraEtiquetas
Descrição:
A partir deste método é possível gerar uma ou mais etiquetas de itens.
Na ttWm-etiqueta é passado apenas 1 (um) registro contendo os dados que deverão serem utilizados no registro de etiquetas. Retorna uma temp-table contendo os seriais das etiquetas gerados. ind-sit-agrupador = 1 /* NÃO AGRUPA */
Obs.: o status "Lida" / "Não lida" é definido na ttWm-etiqueta.
ind-leitura-etiqueta = 1 - Não lido
2 - Lido
3 - Inutilizado
4 - Estornado.
ind-sit-agrupador = 1 - Não agrupa (caso de itens normais)
2 - Agrupados etiquetas (Pallets)
3 - Agrupador próprio (caso de itens que ocupam 100% do pallet).
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
DEF TEMP-TABLE ttSerial NO-UNDO
FIELD de-serial AS DECIMAL.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
geraSeqEtiqueta
Descrição:
O método consiste em gerar, apartir do BO de etiquetas, um novo número serial válido no BO de parâmetros.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
getCarga
Descrição:
O método consiste em buscar a carga do documento.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
getConteudoCarga
Descrição:
O método consiste em apresentar todas as etiquetas (não agrupa, agrupador etiquetas, agrupador próprio) vinculadas a uma determinada carga em específico.
É necessário na apresentação dos dados ficar atento ao nível que existe entre etiquetas agrupadoras e etiquetas não agrupadoras.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pIdCarga
...
Método:
getInfoAgrupador
Descrição:
O método consiste em retornar as etiquetas associadas ao agrupador.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
getInfoAgrupadores
Descrição:
Retornar todos os agrupadores que ainda não foram associados a uma carga
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
Método:
getInfoEtiqueta
Descrição:
O método consiste em obter as informações da etiqueta, através de um número
serial informado.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttWm-Etiqueta NO-UNDO LIKE wm-etiqueta.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
getTableEmbalagem
Descrição:
Metodo Auxiliar chamado pela procedure 'returnImpressaoEtiqueta'.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE tt-embalagem NO-UNDO
FIELD CodItem AS CHARACTER FORMAT "X(16)":U
FIELD CodRefer AS CHARACTER FORMAT "X(8)":U
FIELD CodLote AS CHARACTER FORMAT "X(40)":U
FIELD DtValidadeLote AS DATE
FIELD NumSeqItem AS INTEGER
FIELD CodEmbalagem AS CHARACTER FORMAT "X(010)":U
FIELD cod-emb-pai AS CHARACTER FORMAT "X(010)":U
FIELD logPai AS LOGICAL
FIELD ControlaEtiqueta AS LOGICAL
FIELD QtdItemEmbalagem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD QtdEmbalagem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD QtdItem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD CodLayoutItem AS INTEGER FORMAT "9999":U
FIELD CodLayoutEmbalagem AS INTEGER FORMAT "9999":U
FIELD CodBarrasItem AS CHARACTER FORMAT "X(100)":U
FIELD CodBarrasEmbalagem AS CHARACTER FORMAT "X(100)":U
FIELD id-movto AS DECIMAL FORMAT ">>>>>>>>>9":U .
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
p-cod-estabel
...
Método:
inutilizaEtiquetas
Descrição:
Quando for uma etiqueta de item, seja ele único por pallet ou que sofra agrupamento, seu status será trocado para "inutilizado".
Quando for uma etiqueta de agrupador, esta será inutilizada e os seriais que ela agrupava serão retornados, com o status de lido e o id-agrupador igual a zero.
O método consiste em informar um serial para ser inutilizado pelo sistema.
No caso de etiqueta que sofre agrupamento, somente é permitida sua inutilização caso não esteja vinculada a um agrupador.
No caso de etiqueta agrupadora, somente será permitida sua inutilização caso ela não esteja vinculada a uma carga. Se não estiver, todas as etiquetas que estavam agrupadas a ela terão o atributo "id-agrupador = 0" e seus seriais alimentados na temp-table passada por parâmetro.
Finalmente, se for uma etiqueta de agrupador único, somente será inutilizada se não estiver vinculada a nenhuma carga.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE ttSerial NO-UNDO
FIELD de-serial AS DECIMAL.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
leEtiquetas
Descrição:
Este método consiste na troca de status de leitura da etiqueta e na atualização da data de leitura. Consiste se a etiqueta é uma etiqueta de item, se já não pertence a um agrupador, se já não está lida.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
leEtiquetasAgrupadorProprio
Descrição:
Este método consiste na troca de status de leitura da etiqueta e na atualização da data de leitura. Consiste se a etiqueta é uma etiqueta de item, se já não pertence a um agrupador, se já não está lida.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
leEtiquetasAgrupadorProprio
Descrição:
Este método consiste na troca de status de leitura da etiqueta e na atualização da data de leitura. Consiste se a etiqueta é uma etiqueta de item, se já não pertence a um agrupador, se já não está lida.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pSerial
...
Método:
returnImpressaoEtiqueta
Descrição:
Retorna tt-embalagem que sera utilizada pelo Data Collection.
Requisitos:
Definição de temp-table:
DEF TEMP-TABLE tt-embalagem NO-UNDO
FIELD CodItem AS CHARACTER FORMAT "X(16)":U
FIELD CodRefer AS CHARACTER FORMAT "X(8)":U
FIELD CodLote AS CHARACTER FORMAT "X(40)":U
FIELD DtValidadeLote AS DATE
FIELD NumSeqItem AS INTEGER
FIELD CodEmbalagem AS CHARACTER FORMAT "X(010)":U
FIELD cod-emb-pai AS CHARACTER FORMAT "X(010)":U
FIELD logPai AS LOGICAL
FIELD ControlaEtiqueta AS LOGICAL
FIELD QtdItemEmbalagem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD QtdEmbalagem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD QtdItem AS DECIMAL FORMAT "999,999,999,999.9999":U
FIELD CodLayoutItem AS INTEGER FORMAT "9999":U
FIELD CodLayoutEmbalagem AS INTEGER FORMAT "9999":U
FIELD CodBarrasItem AS CHARACTER FORMAT "X(100)":U
FIELD CodBarrasEmbalagem AS CHARACTER FORMAT "X(100)":U.
DEFINE TEMP-TABLE RowErrors NO-UNDO
FIELD ErrorSequence AS INTEGER
FIELD ErrorNumber AS INTEGER
FIELD ErrorDescription AS CHARACTER
FIELD ErrorParameters AS CHARACTER
FIELD ErrorType AS CHARACTER
FIELD ErrorHelp AS CHARACTER
FIELD ErrorSubType AS CHARACTER
index seq ErrorSequence.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
p-cod-estabel
...
Método:
validaAgrupCarga
Descrição:
O método consiste em validar se um determinado serial lido pode ou não ser agrupado a uma carga. Só será possível a associação de uma etiqueta que já tenha sido reportada e que não esteja associada a nenhuma outra carga.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
pCodUsuario
...
Método:
validaEtiquetaMovto
Descrição:
O método tem por objetivo validar se um serial lido pertence a um determinado movimento do documento.
Parâmetros:
...
Parâmetro
...
Tipo
...
Formato
...
I
...
O
...
IO
...
Descrição
...
p-id-etiqueta
...