| Produto: | |
|---|---|
| Linha de Produto: | |
| Segmento: | |
| Módulo: | TOTVS DMS (Linha Protheus) - Oficina (SIGAOFI) |
| Função: | Orc. Por Fases (OFIXA011) |
| País: | Brasil |
| Ticket: | 22790459 |
| Requisito/Story/Issue (informe o requisito relacionado) : | DVARMIL-7878 |
Localização: Atualizações \ Mov Oficina \ Orc. Por Fases (OFIXA011).
Em que ponto? Ponto de entrada executado Em movimentos usando orçamento e peças da OS (VSJ) para logar o QESTNA e dados da peça para debug do nível de atendimento. O PE enviará dados para um servidor de telemetria da MIL Totvs DMS. Para que este P.E. funcione, será necessário permitir a telemetria utilizando o parâmetro MV_DMSTLM conforme abaixo:
| Variável | MV_DMSTLM |
|---|---|
| Tipo | Caractere |
| Descrição | Telemetria DMS |
| Conteúdo | ! |
Dessa forma será habilitado o Ponto de Entrada.
OBS: O envio dos dados requer um token de acesso que a TOTVS poderá te enviar, este token é obrigatório para que o envio seja feito.
Parâmetro:
| Variável | Tipo | Descrição |
|---|---|---|
cOrc | Caractere | Número da OS ou Orçamento Oficina |
cProgra | Caractere | Programa que chamou o P.E.. |
cCodPec | Caractere | Código da peça (geralmente o B1_COD). |
nQESTNA | Numérico | Número de estoque nível de atendimento. |
nQTDINI | Numérico | Quantidade pedida pelo cliente. |
cLOCAL | Caractere | Código do local (geralmente B2_LOCAL). |
cDetAdc | Caractere | Detalhes adicionais quando requerido. |
cFLAL | Caractere | Filial dos dados. |
Retorno:
Exemplo de utilização Advpl:
user function X486NAUN()
local aData := PARAMIXB
local oSqlHlp := DMS_SqlHelper():New()
local oTelemetria := DMS_Telemetria():New()
local lLoga := ! Empty(GETMV("MV_DMSTLM"))
if lLoga
cOrc := iif(empty(aData[1]), "N/A", aData[1])
cProgra := iif(empty(aData[2]), "N/A", aData[2])
cCodPec := iif(empty(aData[3]), "N/A", aData[3])
nQESTNA := iif(empty(aData[4]), -9999, aData[4])
nQTDINI := iif(empty(aData[5]), -9999, aData[5])
cLOCAL := iif(empty(aData[6]), "N/A", aData[6])
cDetAdc := iif(empty(aData[7]), "N/A", aData[7])
cFLAL := iif(empty(aData[8]), "N/A", aData[8])
cCodPec := LEFT(cCodPec, GetSX3Cache("B1_COD", "X3_TAMANHO"))
dbSelectArea("SB2")
dbSetOrder(1)
if SB2->(dbSeek(cFLAL + cCodPec + cLOCAL))
nCALCES := SaldoSB2()
else
nCALCES := -9999
endif
aRegs := oSqlHlp:GetSelectJson({"B2_FILIAL", "B2_LOCAL", "B2_QATU"}, " SELECT B2_FILIAL, B2_LOCAL, B2_QATU FROM "+RetSqlName("SB2")+" WHERE B2_FILIAL = '" + cFLAL + "' AND B2_COD = '" + cCodPec + "' AND B2_LOCAL = '" + cLOCAL + "' AND D_E_L_E_T_ = ' ' ")
jDadB2 := JsonObject():New()
jDadB2['b2'] := aRegs
cDetAdc += " - " + jDadB2:ToJson()
oTelemetria:LogaOficina(cOrc, cProgra, cCodPec, nQESTNA, nQTDINI, nCALCES, cLOCAL, cDetAdc, cFLAL)
endif
return .t. |