Análise
| Análise | |
| Commerce Web, Projeto Transferencia Commerce Web | |
| Data da Análise: 08/10/2018 |
Projeto
Projeto visa criação de novo serviço no Middleware para possibilitar a geração de nota de transferência com base em itens do pedido de reposição. Criação de Tele no CommerceWeb para complementar pedido de Reposição para Emissão de Nota.
Especificação Técnica
Configurações Necessárias
TTConfig >>> Outros >>> Ambiente >>> N.F. Emitidas >>> Transferência
TTConfig >>> Outros >>> Ambiente >>> N.F. Emitidas >>> Principal >>> Plano
Protótipo de Tela
Para tarefa 104712 utilizar tela semelhante a montada para lançamento do pedido de reposição pelo CommerceWeb.
Mudanças por Módulo
Descrever para uma pessoa com conhecimento técnico o que será realizado no projeto, dividindo as especificações por módulos de sistema.
104700 - Middleware - Criar Serviço REST para Geração de Transferência entre Filiais
Criar Serviço para Receber Lista de Itens do pedido de Reposição "Exemplo de JSON de entrada odo serviço anexo" e gerar Nota de Transferência seguindo as regras e configurações existentes.
Condição de Pagamento Padrão: "TT_CFG.VC_FILPGT" - "TT_CFG.VC_CODPGT". Tabela de Preço Padrão: "TT_CFG.FILPRE" - "TT_CFG.CODPRE". Preço do produto a ser utilizado "TT_CFG.VALORTRANSFERENCIA" ou "ValoresProdutoTransfAutom".
Ao receber um item parcial ou com mais de 1 lote deve tratar a quebra do item do pedido de Reposição e por consequência do "Item do Pedido de Compra", "Item da Venda", "Item do Orçamento", "Encomenda", "Item de Compra" quando refereciados.
Gerar nota com o número de itens permitidos conforme definição da Série "TT_CFG.TRANSFER_SER" - "TD_SER.QTDITP".
Para filiais de mesmo radical utilizar o CFOP "TT_CFG.TRANSFER_NAT" para saída e "TT_CFG.TRANSFER_CODCFO" para entrada. Para filiais de radical diferente utilizar o CFOP "TT_CFG.NATVEN" e "Equivalencia de Entrada". Para cada nota gravar na Filial de Origem o registro de Venda(TT_VEN-TT_IVE-TT_REC) e para Filial de Destino gravar o registro de Entrada de Compra(TT_COM-TT_ICO-TT_PAG).
Para cada nota Gerada deve-se retornar os dados principais como Série, Número e etc semelhante ao realizado no serviço de Nota de Importação.
Deve-se calcular os impostos da transferência com algumas resalvas.
Quando CNPJ de radical diferente é calculado imposto como uma venda normal considerando todas as regras de venda como destaque do IPI "TT_CFG.DESIPI" dentro outras mais.
Quando CNPJ de mesmo radical:
Quando Filial do Tipo "Atacado/Equiparado a Indústria" - "TD_FIL.TIPCOM", abaixo a regras aplicadas pelo Checkout e que devem ser tratadas.
Consulta o preço da filial para calcular o IPI quando destacado "TD_FIL.DESIPITRA".
A base do IPI fica diferente para o tipo Atacado. lnPrecoDest = ConsultaPrecoFilial(Left(CLIENTE.CHAVECLI,3), GRADE.CHAVEPRO) lnBase = Round(lnPrecoDest * ITENS.QTDADE,2) Select TIPCOM From TT_FIL Where CODFIL = Left(CLIENTE.CHAVECLI,3) Into Cursor cComFilial If Reccount('cComFilial') > 0 And cComFilial.TIPCOM = "A" lnFracaoBase = PaPerIPIAta Else lnFracaoBase = PaPerIPITra Endif Use In cComFilial If lnFracaoBase > 0 lnBase = Round((lnBase * lnFracaoBase) / 100, 2) Endif Replace vlrfildes With lnPrecoDest In itens Replace ipitra With lnFracaoBase In itens && Carla WF 90964 - Acidicionar o frete na base do IPI lnBase = lnBase + IIF(cfgven.fr_e_d = 1, 0, ITENS.VLRFRE + ITENS.VLRSEG) ***************************** paDesIpiTra = TT_FIL.DESIPITRA PaTipCom = TT_FIL.TIPCOM PaPerIPIAta = TT_CFG2.PERIPIATA PaPerIPITra = TT_CFG2.PERIPITRA *********************** -Transferências entre filiais substitutas deve-se tributar -Transferência com base cálculo ICMS majorada pelo valor do frete, IPI e ICMS ST da ultima compra (PaBasICM_Maj) PaBasICM_Maj = TT_Fil.BasICM_Maj
Transferência entre filiais substitutas aplicar a redução (REDBAS)
Parâmetros de Entrada:
{ "Itens":[ { "Filial": "001", "Pedido": " 1", "NumeroItem": 1, "Quantidade": 5.0, "Lotes": [ { "NumeroLote": "125487822", "Quantidade": 2.00 }, { "NumeroLote": "79213655", "Quantidade": 3.00 } ]
}
] }
- Parâmetros de Saída:
Retornar uma Lista de Notas Geradas dentro do "livre".
[{"Filial":"<Código da Filial>", "Sequen":"<Sequenciador>", "NumeroECF":"<Número do ECF>", "Serie":"<Código da Série>", "NumeroNota":"<Número da Nota>"}]
104697 - Criar coluna em tabela [TT_PED]
- Criar nova coluna com as seguintes especificações:
- Tabela: TT_PED
- Coluna: TRAAUT
- Descrição Abrev. (até 20 pos.): Tranferência Automática?
- Descrição Completa: Tranferência Automática?
- Tipo/Precisão: VARCHAR(1)
- Default: 'F'
- Aceita nulo?: Não
- Constraints (CK, FK, I_FK, I_LC e I_UQ): Permitir apenas T ou F
- Tratar log?: Sim
104705 - Criar Interface para coluna "TT_PED.TRAAUT"
TTBackof >>> Principal >>> Compras >>> Pedido >>> Reposição Criar interface para identificação se o pedido de reposição irá gerar Nota automática. Obd: Campo é exclusivo para o Processo de Pedido de Reposição não deve ser visivél quando utilizado o Pedido de Compra pois ambos usam a mesma tela de Base.
104706 - Alterar processo de Transferência automática para gerar Pedido de reposição.
Tratar processos e funções para não mais gerar registro de Venda(TT_VEN-TT_IVE) e Compra(TT_COM-TT_ICO) e sim gerar Pedido de reposição(TT_PED-TT_IPE). Caso existe pedido de reposição para filial e que esteja aberto não deve gerar um Novo deve-se utilizar o mesmo. Incluir item ao pedido de reposição Aberto. Funções: "GeraTransfAutom", "NotaAbertaTransfAutom", "IncluiItemTransfAutom", "RemoveItemTransfAutom", "EmailTransfAutom", "PC_IVE_AUX_UPDATE", "PC_IOR_PLUS_UPDATE"
104712 - Criar Tela para geração da Nota de Transferência
CommerceWeb >>> Principal >>> Compras >>> Reposição >>> Nota de Transferência Criar tela com 5 passos onde: 1º Passo: Seja para selecionar um ou varios pedidos de reposição "TT_PED_CODFOR = ' 0'" que estejam autorizados "TT_PED.FLGEST = '2'", não gera transferência automática "TT_PED.TRAAUT = 'F'" e com possua itens pendentes "TT_IPE.FLGEST = 'A'". 2º Passo: Selecionar os itens e as quantidades para geração da nota. 3º Passo: Selecionar os Lotes quando configurado no produto que utiliza lote, quando produto utilizar lote DNA deve-se obrigar para cada unidade um lote diferente. 4º Passo: Montar o JSON e enviar para o serviço do Middleware criado na Tarefa "104700". 5º Passo: Exibir as notas geradas ou inconsistências encontradas.