Histórico da Página
...
| Descrição: | Ponto de Entrada utilizado para informar os dados pertinentes a etiquetas, quando utilizadas etiquetas de código natural, dessa forma ele permite a criação da própria composição da quantidade por embalagem e interpretação de leitura do código de barras. | ||||
|---|---|---|---|---|---|
| Eventos: | O Ponto de Entrada é chamado no momento da leitura de etiquetas quando não utilizado o parâmetro MV_ACDCB0. | ||||
| Programa Fonte: | ACDV167.prg | ||||
| OBS | Ponto de entrada genérico deve ser avaliado o comportamento em todas as rotinas que utilizam litura de código de barras | ||||
| Parâmetros: | PARAMIXB[01] - Código da etiqueta lida. | ||||
| Retorno | aRet → Vetor {"Código do Produto","Quantidade(Embalagem normalmente analisado na nQE := SB1->B1_QE no processo padrão)","Lote","Data de Validade","Número de Série","Endereço Destino"} | ||||
| Exemplo: | V167VLD o Ponto de entrada somente é acionado nas leituras de etiqueta retornando as informações imputadas caso tenha alguma exceção por rotina limpar o array Bloco de código |
#Include "TOTVS. ch" User FunctionCH" UserFunctionCBRETEAN() Local cId := AllTrim
,TAMSX3("B1_CODBAR ) Local aRet := {} // DADOS DA ETIQUETA Local aArea := {} // ESTADO DOS ARQUIVOS DE TRABALHO Local cPrd := SubStr(cId, 1, Len(cId) -1) // CÓDIGO DO PRODUTO (B1_COD) Local nQE := 1 // ARMAZENA A ÁREA CORRENTE AAdd(aArea, GetArea()) // ARET[1] == CÓDIGO DO PRODUTO AAdd(aRet, PadR(cPrd, TamSX3("B8_PRODUTO")[1])) // ARET[2] Calculo de quantidade por embalagem AAdd(aRet, nQE) // ARET[3] LOTE DbSelectArea("SB8") DbSetOrder(1)")[1]) // CÓD. PRODUTO + PadR(cPrd, TamSX3("B8_LOTECTL")[1]))
SB8- >B8>B8_LOTECTL)
ARET[4] DATA DE VALIDADEVALIDADE SB8- >B8>B8_DTVALID)
// RESTAURA O ESTADO FECHADO DO ARQUIVO SB8SB8 ARET[5] NÚMERO DE SÉRIESÉRIE PadR("", TamSX3("BF_NUMSERI")[1]))
ARET[6] ENDEREÇO DESTINODESTINO PadR(" END", TamSX3("BE_LOCALIZ")[1])) RestArea(aArea[1])
|