Passo a passo: | RN001 - Quando for informado o campo "ScrapProductTo", na lista de refugos deve ser criada uma nova ordem de produção de Interna para este código, requisitando o código do produto da Ordem que refugou, e informando o depósito "WarehouseCodeTo", caso venha preenchido, do contrário utilizará o depósito do acabado da Ordem pai. A ordem pai no entanto não possuirá Refugo. RN002 - A quantidade da nova ordem criada, será a mesma do campo "ScrapQuantity, e também igual para o item a requisitar. RN003 - O campo "ScrapProduct" será ignorado na mensagem, já que para o Datasul não pode ser gerado refugo a partir de outro item que não seja o próprio item da Ordem. Este campo é usado apenas no Protheus. RN004 - Deve validar se existe nos parâmetros o código da linha de produção a ser utilizada para criar a Ordem Interna de troca de código. Caso não exista não deverá prosseguir na integração do Apontamento e enviar uma mensagem de erro. RN005 - A ordem de troca de código deve ter o tipo de reporte por Ordem, para simplificar o apontamento de toda quantidade uma única vez. RN006 - Caso o item informado em "ScrapProductTo" tenha controle por lote, o campo "LotCode" não tenha sido informado, será utilizado o como lote padrão a mesma regra da tela de apontamento (CP0311 - Estabelecimento + Nr. Ordem). RN007 - Para estorno do apontamento principal, deve ser estornado primeiro o apontamento da ordem de troca de código. RN008 - Quando a quantidade do apontamento principal for ZERO, e existir apenas "ScrapQuantity" com "ScrapProductTo", então será apenas criada a Ordem Interna para troca de código e apontada esta. Desta forma indica que já houve produção anteriormente. RN009 - Itens refugados para trocar de código, não poderão ter controle por referência, pois o PCP-Factory não possui o conceito. RN010 - A ordem interna de troca, não pode ser integrada com o PC-Factory, para isto, será sempre verificado no adapter ProductionOrder se o campo Reaproveitamento (CP0106) é o mesmo da ordem, se for não enviar mensagem. RN011 - Para reprocessar um ID já processado com erro, deve ser informado "true" no key name Reprocess. RN012 - Um ID já processado sem erro, não pode ser reprocessado, neste caso deve retornar a mensagem de já processado normalmente. A quantidade do item a ser trocado de código(ListOfWasteAppointments.ScrapQuantity), não deve ser contabilizada no campo de quantidade refugada do reporte da ordem (ProductionAppointment.ScrapQuantity). O motivo, é que esta quantidade será usada para criar uma nova Ordem Interna, e retirar do estoque o item pai da Ordem. Será possível não ter produção no apontamento(quantidade Zero), informando apenas na lista de refugo a quantidade a ser reaproveitada (para isto o campo ListOfWasteAppointments.ScrapProductTo, precisa ter sido informado). Ex: Item pai da Ordem: Caderno Quantidade Reportada: 100 Quantidade Aprovada: 98 Quantidade Refugada: 2 Lista de Refugos **Refugo 1 Quantidade Refugada: 2 Código Produto Refugado Destino: **Refugo 2 Quantidade Refugada: 10 Código Produto Refugado Destino: Papel Mache Neste exemplo, será gerado ACA de 98 em estoque para Caderno, criada nova OP para Papel Mache e reportada esta ordem com produção de 10, requisitando 10 Cadernos. |