Skip to main content

Produtos

Descrição

O endpoint PostAddProduct é responsável pelo cadastro de um novo produto no sistema MIMS. O cadastro pode ser visualizado na tela CAD223


Como cadastrar um novo produto

Request HTTP POST

Tipo da RequisiçãoURL Exemplo
POST{{url_base}}/PostAddProduct
Exemplohttp://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddProduct"

Parâmetros de Entrada

ParâmetroTipoObrigatórioDescrição
ProductNoString(25)SimCódigo externo do produto
NameString(60)SimDescrição do produto
ReducedNameString(28)SimDescrição reduzida do produto
ProductionCodeString(10)SimCódigo do produto na produção
PackageNoString(25)SimCódigo externo da embalagem
FamilyNoString(25)SimCódigo externo da família do produto
BrandNoString(25)SimCódigo externo da marca do produto
MaterialNoString(25)SimCódigo externo do material
AnimalTypeNoString(25)SimCódigo externo do tipo de animal
IntegrationNoString(25)NãoCódigo integrado do produto
UnitMeasurementNoString(25)NãoCódigo externo da unidade de Medida da Peça
BillingUnitMeasurementNoString(25)NãoCódigo externo da Unidade de Medida de Faturamento
ValidationRuleNoString(25)NãoCódigo externo da regra de validade
LabelTemplateCodeIntegerNãoModelo Etiqueta
PreIdentificationLabelTemplateCodeIntegerNãoModelo Etiqueta Pré-Identificação
PrimaryLabelTemplateCodeIntegerNãoModelo Etiqueta Primária
ConditionConditionProductSimEnumerador com os possíveis valores para a Condição do produto: cdFresh (Fresco), cdDeepChill (Resfriado) ou cdFrozen (Congelado)
SpeciesSpeciesProductSimEnumerador com os possíveis valores para a Espécie do produto: spcWhole (Inteiro), spcCut (Corte), spcGiblets (Miúdo), spcOther (Outro) ou spcByProduct (Subproduto)
RawMaterialStateRawMaterialStateProductSimEnumerador com os possíveis valores para a Estado do produto: stInNatura (In Natura) ou stSazonado (Temperado)
EAN13String(13)NãoEAN 13
EAN14String(14)NãoEAN 14
MinTolerancePercentageFloatNãoPercentagem de Tolerância Mínima
MaxTolerancePercentageFloatNãoPercentagem de Tolerância Máxima
AnimalsInPackageQtyIntegerNãoQuantidade de Animais na Embalagem
ProductInPackageQtyIntegerNãoQuantidade de Produtos na Embalagem
MinimumCapacityFloatNãoCapacidade Mínima
AverageCapacityFloatNãoCapacidade Média
MaximumCapacityFloatNãoCapacidade Máxima
StandardCapacityFloatNãoCapacidade Padrão
ProductBranchListProductBranchListSimLista de informações do produto por filial
OverwriteIfExistsBooleanNãoFlag que indica que os dados devem ser sobrescritos caso o registro já exista
Observação
  • Nos parâmetros LabelTemplateCode, PreIdentificationLabelTemplateCode e PrimaryLabelTemplateCode, validamos se o valor passado é maior que 0 e verificamos a existência apenas das etiquetas que possuem o código maior ou igual a 1000, pois são as etiquetas que possuem registro na view "VW_ETIQUETA". Se a etiqueta não estiver registada, geramos a exceção “A etiqueta "%s" informada não foi encontrada!”
  • Certifique-se de que os parâmetros ProductNo, FamilyNo, BrandNo, MaterialNo, AnimalTypeNo, BranchNo e outros códigos externos sejam válidos e não duplicados no sistema MIMS.

📝 Objeto ProductBranchList

Descrição

O objeto ProductBranchList representa uma lista de informações do produto por filial.

Parâmetros de Entrada

ParâmetroTipoObrigatórioDescrição
BranchNoString(25)SimCódigo externo da filial
NameString(120)NãoDescrição do produto na filial
ProductionGroupNoString(20)NãoDescrição do grupo de produção
ClassifierGridNoString(25)NãoCódigo externo da grade classificadora
WarehouseNoString(25)NãoCódigo externo do almoxarifado
StructureNoString(25)NãoCódigo externo da estrutura analítica
UnitMeasurementNoString(25)NãoCódigo externo da unidade de Medida da Peça
UnitMeasurementIndividualNoString(25)NãoCódigo externo da unidade de Medida da Peça individual
StockSequestrationDaysIntegerNãoDias Sequestro em estoque
ToleranceStandardDateDaysIntegerNãoDias de tolerância da data padrão
DefaultQuantityinPalletIntegerNãoQuantidade padrão de embalagens para montagem do palete
UnidPartQtyIntegerNãoQuantidade de peças por unidade
AnimalsInPackageQtyIntegerNãoQuantidade de animais na embalagem
ProductInPackageQtyIntegerNãoQuantidade de produtos na embalagem
MinRawMaterialPercentageFloatNãoPorcentagem Mínima de Produto Matéria-Prima
WeightToleranceUponGroupedWeighing
Percentage
FloatNãoPorcentagem de Tolerância de Peso na Pesagem Agrupada
MaxTolerancePercentageFloatNãoPorcentagem de Tolerância Máxima do Peso
MinTolerancePercentageFloatNãoPorcentagem de Tolerância Mínima do Peso
PreIdentificationLabelTemplateCodeIntegerNãoModelo Etiqueta Pré-Identificação
PrimaryLabelTemplateCodeIntegerNãoModelo Etiqueta Primária
RegisterAgricultureMinistryCodeString(14)SimNúmero Registro Ministério da Agricultura
AgricultureMinistryNameString(180)SimDescrição no Ministério da Agricultura
IdentifiesTypeIdentifiesTypeNãoEnumerador com os possíveis valores para o Tipo de Identificação do produto: itOpticalReading (Leitura Óptica) ou itManualTyping (Digitação Manual)
DispatchTypeDispatchTypeSimEnumerador com os possíveis valores para o Tipo de Expedição do produto: dtOpticalReading (Leitura Óptica), dtManualDispatching (Expedição Manual), dtAutomaticDispatching (Expedição Automática) ou dtInBulk (A Granel)
OwnProductionOwnProductionNãoEnumerador com os possíveis valores para a Produção Própria: opYes (Sim), opNo (Não) ou opBoth (Ambos)
IsInactiveBooleanNãoFlag que indica que o produto está inativo
HasInactiveTunnelControlBooleanNãoFlag que indica que o Controle de Túneis está Inativo
OverwriteIfExistsBooleanNãoFlag que indica que os dados devem ser sobrescritos caso o registro já exista
Observação
  • Nos parâmetros PreIdentificationLabelTemplateCode e PrimaryLabelTemplateCode, validamos se o valor passado é maior que 0 e verificamos a existência apenas das etiquetas que possuem o código maior ou igual a 1000, pois são as etiquetas que possuem registro na view "VW_ETIQUETA". Se a etiqueta não estiver registada, geramos a exceção “A etiqueta "%s" informada não foi encontrada!”
  • Nos parâmetros WarehouseNo, ClassifierGridNo e StructureNo, quando a requisição for uma alteração de produto e o valor informado for igual ao texto de integração padrão (definido na variável StandardIntegration do arquivo INI), o sistema não atualiza o valor desses campos. Nesses casos, o valor já existente no cadastro do produto será mantido.

Retorno

ParâmetroTipoObrigatórioDescrição
WebServiceReturnWebServiceReturnSimInformações padrão de resposta do WebService na execução do método
ProductCodeIntegerSimCódigo interno do produto gerado no sistema MIMS

Exemplo de Request

curl --location --request POST '{{url_base}}/PostAddProduct' \
--header 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{
"ProductNo": "PROD001",
"Name": "Nome do produto Teste",
"ReducedName": "Produto Teste",
"ProductionCode": "FRG001",
"PackageNo": "EMBA123",
"FamilyNo": "FAMI123",
"BrandNo": "MARCA123",
"MaterialNo": "1117",A
"IntegrationNo": "INT123456",
"AnimalTypeNo": "TPAVE123",
"ValidationRuleNo": "VAL001",
"LabelTemplateCode": 5011,
"PreIdentificationLabelTemplateCode": 5014,
"PrimaryLabelTemplateCode": 5015,
"UnitMeasurementNo": "UN",
"BillingUnitMeasurementNo": "UN",
"ValidityRuleNo": "VALI123",
"Condition": "cdFresh",
"Species": "spcCut",
"RawMaterialState": "stInNatura",
"EAN13": "1234567899874",
"EAN14": "12345678998745",
"MaxTolerancePercentage": 85,
"MinTolerancePercentage": 60,
"AnimalsInPackageQty": 10,
"ProductInPackageQty": 30,
"MaximumCapacity": 100,
"AverageCapacity": 50,
"MinimumCapacity": 20,
"StandardCapacity": 60,
"OverwriteIfExists": true,
"ProductBranchList":[
{
"BranchNo": "BR001",
"Name": "Produto Exemplo - Filial",
"ProductionGroupNo": "GRP001",
"ClassifierGridNo": "CLF001",
"WarehouseNo": "WH001",
"StructureNo": "STR001",
"UnitMeasurementNo": "UND001",
"UnitMeasurementIndividualNo": "UNDIND001",
"StockSequestrationDays": 7,
"ToleranceStandardDateDays": 3,
"DefaultQuantityinPallet": 20,
"UnidPartQty": 10,
"AnimalsInPackageQty": 5,
"ProductInPackageQty": 50,
"MinRawMaterialPercentage": 1.5,
"WeightToleranceUponGroupedWeighingPercentage": 2.0,
"MaxTolerancePercentage": 4.0,
"MinTolerancePercentage": 1.0,
"PreIdentificationLabelTemplateCode": 1001,
"PrimaryLabelTemplateCode": 1002,
"RegisterAgricultureMinistryCode": "REG1234567890",
"AgricultureMinistryName": "Ministério da Agricultura - Unidade Exemplo",
"IdentifiesType": "itOpticalReading",
"DispatchType": "dtAutomaticDispatching",
"OwnProduction": "opYes",
"IsInactive": false,
"HasInactiveTunnelControl": false,
"OverwriteIfExists": true
}
]
}'

Exemplo de Response

{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
},
"ProductCode": 789
}