Árvore de páginas


01. DADOS GERAIS

Produto:

TOTVS Backoffice

Linha de Produto:

Linha Datasul

Segmento:

Manufatura

Módulo:

TOTVS Backoffice (Linha Datasul) - Estoque (MCE)

Função:Movimento de Estoque
País:Brasil
Ticket:
Requisito/Story/Issue (informe o requisito relacionado) :DMANESTOQ-12771


02. SITUAÇÃO/REQUISITO

Criação de API REST com métodos de GET (consulta) e POST (criação) para movimentos de estoque a fim de substituir a integração EAI. As integrações a serem substituídas são: adapters/xml/ar2/axrar009.p e adapters/xml/ar2/axrar011.p.

03. SOLUÇÃO


GET - Consulta de movimentos de estoque. Deve ser enviada requisição GET na ROTA http://[servidor]/dts/datasul-rest/resources/prg/cep/v2/stockMovement passando os filtros padrões no parâmetro $filter, de acordo com a necessidade das informações. Não será possível realizar a consulta sem ser informado pelo menos UM campo chave da tabela movto-estoq.

POST - Geração de movimentos de estoque. Deve ser enviada requisição POST na ROTA http://[servidor]/dts/datasul-rest/resources/prg/cep/v2/stockMovement passando o JSON com as informações do movimento.


04. DEMAIS INFORMAÇÕES

Formato de resposta JSON - método GET:

TransactionID = Número da Transação (Uso interno: movind.movto-estoque.nr-trans)
TransactionType = Tipo do Movimentol (Uso interno: Campo = movind.movto-estoq.tipo-trans), sendo 1 - Entrada e 2 - Saída
TransactionSpecies = Espécie do Movimentol (Uso interno: Campo = movind.movto-estoq.esp-docto)
SiteID = Código do estabelecimento. (Uso interno: Campo = movind.movto-estoq.cod-estabel)
SiteDescription = Descrição do estabelecimento. (Uso interno: Campo = mgadm.estabelec.nome)
TransactionDate = Data de Transação (Uso interno: movind.movto-estoq.dt-trans)
WarehouseID = Código depósito. (Uso interno: Campo = movind.movto-estoq.cod-depos)
WarehouseDescription = Descrição do depósito. (Uso interno: Campo = mgind.deposito.nome)
BinLocationID = Código da localização do material. (Uso interno: Campo = movind.movto-estoq.cod-localiz)
BinLocationDescription = Descrição da localização do material. (Uso interno: Campo = mgind.localizacao.descricao)
ItemCode = Código do item. (Uso interno: Campo = movind.movto-estoq.it-codigo)
ItemDescription = Descrição do item. (Uso interno: Campo = mgind.item.desc-item)
Reference = Referência do Movimento (Uso interno: movind.movto-estoq.cod-refer)
LotOrSerialNumber = Número do lote ou número de série do item. Elemento obigatório para itens controlados por lote, referencia ou número de série. (Uso interno: Campo = movind.movto-estoq.lote)
LotValidityDate = Data de validade do lote informado. (Uso interno: Campo = movind.saldo-estoq.dt-vali-lote)
TransactionQuantity = Quantidade do movimento (Uso interno: movind.movto-estoq.quantidade)
MaterialValue = Valor de Material do Movimentol (Uso interno: Campo = movind.movto-estoq.valor-mat-m[1])
LaborValue = Valor de Mão de Obra do Movimentol (Uso interno: Campo = movind.movto-estoq.valor-mob-m[1])
OverHeadValue = Valor de GGF do Movimentol (Uso interno: Campo = movind.movto-estoq.valor-ggf-m[1])
Series = Série do Movimentol (Uso interno: Campo = movind.movto-estoq.serie)
DocumentNumber = Número do Documento do Movimentol (Uso interno: Campo = movind.movto-estoq.nro-docto)
Account = Conta Contábril do Movimentol (Uso interno: Campo = movind.movto-estoq.conta-contabil) 

{
    "total": 200,
    "hasNext": true,
    "items": [
        {
            "Account": "11045401",
            "TransactionType": 2,
            "SiteID": "100",
            "ItemCode": "3468-00",
            "WarehouseDescription": "PRODUTOS ACABADOS",
            "Reference": "",
            "TransactionSpecies": 28,
            "WarehouseID": "EXP",
            "DocumentNumber": "0000866",
            "ItemDescription": "LAMINA DE CORTE 9 dpp",
            "TransactionID": 7626761,
            "Series": "1",
            "MaterialValue": 2478.0,
            "BinLocationDescription": "EXP",
            "TransactionQuantity": 0.0,
            "LaborValue": 0.0,
            "BinLocationID": "",
            "SiteDescription": "ESTABELECIMENTO MODELO 001",
            "LotOrSerialNumber": "",
            "OverHeadValue": 0.0,
            "TransactionDate": "2016-04-07",
            "LotValidityDate": null
        }
    ]
}

Formato de envio JSON - método POST:

TransactionType = Tipo de transação do estoque, que indica se o movimento é de entrada ou saída. Valores: 1 - Entrada, 2 - Saida. (Uso interno: Campo = mgind.movto-estoq.tipo-trans - Include = ininc/i01in218.i02)
TransactionNumberExternal = Número da transação do sistema externo, que será integrado ao EMS.
TransactionDate = Data da transação. (Uso interno: Campo = movind.movto-estoq.dt-trans)
SiteID = Código do estabelecimento. (Uso interno: Campo = movind.movto-estoq.cod-estabel)
WarehouseID = Código depósito. (Uso interno: Campo = movind.movto-estoq.cod-depos)
BinLocationID = Código da localização do material. (Uso interno: Campo = movind.movto-estoq.cod-localiz)
LotOrSerialNumber = Número do lote ou número de série do item. Elemento obigatório para itens controlados por lote, referencia ou número de série. (Uso interno: Campo = movind.movto-estoq.lote)
LotValidityDate = Data de validade do lote informado. (Uso interno: Campo = movind.saldo-estoq.dt-vali-lote
ItemCode = Código do item. (Uso interno: Campo = movind.movto-estoq.it-codigo)
DirectDebitItemDescription = Descrição utilizada para itens de débito direto. (Uso interno: Campo = movind.movto-estoq.descricao-db)
ReferenceCode = Código da referência do item. (Uso interno: Campo = movind.movto-estoq.cod-refer)
VendorID = Código interno de identificação do fornecedor. (Uso interno: Campo = movind.movto-estoq.cod-emitente)
GeneralAccountNumber = Número da conta. (Uso interno: Campo = movind.movto-estoq.ct-codigo)
GeneralSubAccountNumber = Número da subconta. (Uso interno: Campo = movind.movto-estoq.sc-codigo)
BusinessUnitCode = Código da unidade de negócio. (Uso interno: Campo = movind.movto-estoq.cod-unid-negoc)
ApplicationAccountNumber = Número da conta. (Uso interno: Campo = movind.movto-estoq.ct-db)
ApplicationSubAccountNumber = Número da subconta. (Uso interno: Campo = movind.movto-estoq.sc-db)
FiscalOperationCode = Código natureza de operação. (Uso interno: Campo = movind.movto-estoq.nat-operacao)
UnitOfMeasureID = Identificador interno da unidade de medida. (Uso interno: Campo = movind.movto-estoq.un)
Quantity = Quantidade do item movimentado pela transação. (Uso interno: Campo = movind.movto-estoq.quantidade)
NetWeight = Peso liquido do item movimentado pela transação. (Uso interno: Campo = movind.movto-estoq.peso-liquido)
ValueType = Tipo do valor da transação, que indica se os valores foram calculados ou informados manualmente. Valores: 1 - Informado, 2 - Valorizado . (Uso interno: Campo = movind.movto-estoq.tipo-valor - Include = ininc/i02in218.i)
DocumentType = Espécie do documento que originou o movimento de estoque, indentificada por um conjunto de indicadores (siglas) intenas do EMS2. Valores: 1 - ACA, 2 - ACT, 3 - NU1, 4 - DD, 5 - DEV, 6 - DIV, 7 - DRM, 8 - EAC, 9 - EGF, 10 - BEM, 11 - NU2, 12 - NU3, 13 - NU4, 14 - ICM, 15 - INV, 16 - IPL, 17 - MOB, 18 - NC, 19 - NF, 20 - NFD, 21 - NFE, 22 - NFS, 23 - NFT, 24 - NU5, 25 - REF, 26 - RCS, 27 - RDD, 28 - REQ, 29 - RFS, 30 - RM, 31 - RRQ, 32 - STR, 33 - TRA, 34 - ZZZ, 35 - SOB, 36 - EDD, 37 - VAR, 38 - ROP. (Uso interno: Campo = movind.movto-estoq.esp-docto - Include = ininc/i03in218.i)
DocumentSeries = Série do documento. (Uso interno: Campo = movind.movto-estoq.serie-docto)
DocumentNumber = Número do documento. (Uso interno: Campo = movind.movto-estoq.nro-docto)
DocumentSequence = Seqüência (item) do documento que originou o movimento de estoque. (Uso interno: Campo = movind.movto-estoq.sequen-nf)
CurrentDocumentValue = Valor total do documento. (Uso interno: Campo = movind.movto-estoq.valor-nota)
CurrentServicesAndProductsCirculationValue = Valor de ICMS do documento. (Uso interno: Campo = movind.movto-estoq.valor-icm)
CurrentIndustrializedProductValue = Valor de IPI do documento. (Uso interno: Campo = movind.movto-estoq.valor-ipi)
CurrentServiceValue = Valor de ISS do documento. (Uso interno: Campo = movind.movto-estoq.valor-iss)
FASBDocumentValue = Valor total do documento. (Uso interno: Campo = movind.movto-estoq.vl-nota-fasb[1])
FASBServicesAndProductsCirculationValue = Valor de ICMS do documento. (Uso interno: Campo = movind.movto-estoq.vl-icm-fasb[1])
FASBIndustrializedProductValue = Valor de IPI do documento. (Uso interno: Campo = movind.movto-estoq.vl-ipi-fasb[1])
FASBServiceValue = Valor de ISS do documento. (Uso interno: Campo = movind.movto-estoq.vl-iss-fasb[1])
CMIDocumentValue = Valor total do documento. (Uso interno: Campo = movind.movto-estoq.vl-nota-fasb[2])
CMIServicesAndProductsCirculationValue = Valor de ICMS do documento. (Uso interno: Campo = movind.movto-estoq.vl-icm-fasb[2])
CMIIndustrializedProductValue = Valor de IPI do documento. (Uso interno: Campo = movind.movto-estoq.vl-ipi-fasb[2])
CMIServiceValue = Valor de ISS do documento. (Uso interno: Campo = movind.movto-estoq.vl-iss-fasb[2])
PurchaseOrderNumber = Número da ordem de compra vinculada ao movimento. (Uso interno: Campo = movind.movto-estoq.numero-ordem)
ManufacturingOrderNumber = Número da ordem de produção que originou o movimento de estoque. (Uso interno: Campo = movind.movto-estoq.nr-ord-produ)
ManufacturingOrderSequence = Seqüência da ordem de produção (Uso interno: Campo = movind.movto-estoq.num-sequen)
ReportNumber = Número do reporte de produção que gerou o movimento de estoque. (Uso interno: Campo = movind.movto-estoq.nr-reporte)
OrderOperationCode = Código da operação. (Uso interno: Campo = movind.movto-estoq.op-codigo)
OrderOperationSequenceNumber = Numero sequencial da operacao da ordem. (Uso interno: Campo = movind.movto-estoq.op-seq)
RouteID = Código do roteiro de fabricação. (Uso interno: Campo = movind.movto-estoq.cod-roteiro)
ParentItemCode = Código do item pai. (Uso interno: Campo = movind.movto-estoq.item-pai)
ReferenceOrderNumber = Número da ordem de referência. (Uso interno: Campo = movind.movto-estoq.nr-ord-refer)
ProjectControlOrderNumber = Numero da ordem de investimento, referente ao módulo de Controle de Investimentos (Uso interno: Campo = movind.movto-estoq.num-ord-inv)
SummarizedRequisitionNumber = Número da requisição sumariada. (Uso interno: Campo = movind.movto-estoq.nr-req-sum)
TargetSiteID = Código do Estabelecimento destino da transação. (Uso interno: Campo = movind.movto-estoq.cod-estabel-des)
TargetOrderNumber = Numero da ordem de produção destino da transação. (Uso interno: Campo = movind.movto-estoq.num-ord-des)
TargetSequenceNumber = Numero sequencia da ordem destino da transação. (Uso interno: Campo = movind.movto-estoq.num-seq-des)
IssueDocumentDate = Data nota fiscal saída. (Uso interno: Campo = movind.movto-estoq.dt-nf-saida)
ListOfBatchAverageValues = Coleção de valores da transação, referentes ao médio Batch, representados em até três moedas diferentes (moeda corrente + alternativas)
**** Sequence = Identificador sequencial ( 1 ~ 3 )
**** MaterialValue = Valor de material. (Uso interno: Campo = movind.movto-estoq.valor-mat-m[1..3]
**** LaborValue = Valor de mão-de-obra. (Uso interno: Campo = movind.movto-estoq.valor-mob-m[1..3]
**** OverHeadValue = Valor de gastos gerais de fabricação (GGF). (Uso interno: Campo = movind.movto-estoq.valor-ggf-m[1..3]
ListOfOnLineAverageValues = Coleção de valores da transação, referentes ao médio On-Line, representados em até três moedas diferentes (moeda corrente + alternativas)
**** Sequence = Identificador sequencial ( 1 ~ 3 )
**** MaterialValue = Valor de material. (Uso interno: Campo = movind.movto-estoq.valor-mat-o[1..3]
**** LaborValue = Valor de mão-de-obra. (Uso interno: Campo = movind.movto-estoq.valor-mob-o[1..3]
**** OverHeadValue = Valor de gastos gerais de fabricação (GGF). (Uso interno: Campo = movind.movto-estoq.valor-ggf-o[1..3]
ListOfStandardCostValues = Coleção de valores da transação, referentes ao custo Padrão, representados em até três moedas diferentes (moeda corrente + alternativas)
**** Sequence = Identificador sequencial ( 1 ~ 3 )
**** MaterialValue = Valor de material. (Uso interno: Campo = movind.movto-estoq.valor-mat-p[1..3]
**** LaborValue = Valor de mão-de-obra. (Uso interno: Campo = movind.movto-estoq.valor-mob-p[1..3]
**** OverHeadValue = Valor de gastos gerais de fabricação (GGF). (Uso interno: Campo = movind.movto-estoq.valor-ggf-p[1..3]

{
    "TransactionType": 1,
    "TransactionNumberExternal": 2,
    "TransactionDate": "2024-01-01",
    "SiteID": "100",
    "WarehouseID": "ALM",
    "BinLocationID": "ALM-L01",
    "LotOrSerialNumber": "LOT-01",
    "LotValidityDate": "2029-01-01",
    "ItemCode": "0020-00",
    "DirectDebitItemDescription": "DirectDebitItemDescription",
    "ReferenceCode": "38A",
    "VendorID": 5579,
    "GeneralAccountNumber": "9987445",
    "GeneralSubAccountNumber": "6654-7887",
    "BusinessUnitCode": "001",
    "ApplicationAccountNumber": "446526",
    "ApplicationSubAccountNumber": "5564789",
    "FiscalOperationCode": "511A",
    "UnitOfMeasureID": "UN",
    "Quantity": 47.55,
    "NetWeight": 44.45,
    "ValueType": 9,
    "DocumentType": 21,
    "DocumentSeries": "SER",
    "DocumentNumber": "DOCTO-123",
    "DocumentSequence": 4457,
    "CurrentDocumentValue": 7798.55,
    "CurrentServicesAndProductsCirculationValue": 10.91,
    "CurrentIndustrializedProductValue": 1.41,
    "CurrentServiceValue": 5454.55,
    "FASBDocumentValue": 335.1,
    "FASBServicesAndProductsCirculationValue": 443.43,
    "FASBIndustrializedProductValue": 111.45,
    "FASBServiceValue": 9987.44,
    "CMIDocumentValue": 4465.45,
    "CMIServicesAndProductsCirculationValue": 557.87,
    "CMIIndustrializedProductValue": 99.54,
    "CMIServiceValue": 77874.54,
    "PurchaseOrderNumber": 99855,
    "ManufacturingOrderNumber": 4412223,
    "ManufacturingOrderSequence": 15,
    "ReportNumber": 16,
    "OrderOperationCode": 98,
    "OrderOperationSequenceNumber": 50,
    "RouteID": "ROT001",
    "ParentItemCode": "0000-01",
    "ReferenceOrderNumber": 4101,
    "ProjectControlOrderNumber": 551000,
    "SummarizedRequisitionNumber": 1220000,
    "TargetSiteID": "200",
    "TargetOrderNumber": 2200000,
    "TargetSequenceNumber": 47830,
    "IssueDocumentDate": "2020-01-01",
    "ListOfBatchAverageValues": [
        {
            "Sequence": 1,
            "MaterialValue": 5.4,
            "LaborValue": 10.6,
            "OverHeadValue": 15.45
        },
        {
            "Sequence": 2,
            "MaterialValue": 6.4,
            "LaborValue": 7.6,
            "OverHeadValue": 10.45
        },
        {
            "Sequence": 3,
            "MaterialValue": 4.4,
            "LaborValue": 10.0,
            "OverHeadValue": 1.45
        }
    ],
    "ListOfOnLineAverageValues": [
        {
            "Sequence": 1,
            "MaterialValue": 5.4,
            "LaborValue": 10.6,
            "OverHeadValue": 15.45
        },
        {
            "Sequence": 2,
            "MaterialValue": 0.4,
            "LaborValue": 0.6,
            "OverHeadValue": 5.45
        },
        {
            "Sequence": 3,
            "MaterialValue": 5.4,
            "LaborValue": 0.6,
            "OverHeadValue": 1.45
        }
    ],
    "ListOfStandardCostValues": [
        {
            "Sequence": 1,
            "MaterialValue": 5.4,
            "LaborValue": 10.6,
            "OverHeadValue": 1.45
        },
        {
            "Sequence": 2,
            "MaterialValue": 5.4,
            "LaborValue": 10.6,
            "OverHeadValue": 15.5
        },
        {
            "Sequence": 3,
            "MaterialValue": 5.4,
            "LaborValue": 1.6,
            "OverHeadValue": 15.45
        }
    ]
}

05. ASSUNTOS RELACIONADOS