Análise
| Análise | |
| Projeto 1021 | |
| Data da Análise: 16/02/2013 |
Projeto
Importante: Modificações após reformulação e separação do projeto em duas fases (5.0J e 5.0L) estão grifadas. Texto antigo está riscado.
Esse projeto visa preparar o sistema para vender com garantia estendida, seguro e demais serviços adicionais.
Esses serviços serão personalizados pelo próprio cliente, de maneira que ele possa definir um prazo, valor fixo ou valor baseado em percentual do preço do item.
Eles serão vendidos no Order e Checkout como itens à parte de maneira que os impostos não incidirão sobre eles, porém, o valor será incluso nas parcelas da venda.
Haverá uma tela no Order para vender os serviços separadamente (sem vincular a nenhuma mercadoria). Nessa tela será gerado um boleto especial para ser resgatado na rotina de recebimentos de terceiros do Checkout.
Para permitir embutir nas parcelas esses serviços adicionais, será necessário primeiramente definir quais são esses serviços no Config. Como em alguns casos eles precisarão ser impressos no Checkout, haverá um campo para definir fórmula de impressão para eles.
Será criado no Backoffice uma guia nova no cadastro de produtos para que se vincule um percentual ou preço fixo para esses serviços.
No Order, haverá tratamento para oferecer o serviço quando usuário incluir novo item.
Haverá um grid para usuário incluir, remover ou editar esses serviços.
Ao fazer um orçamento poderão ser vendidos serviços não vinculados a itens, entretanto o orçamento precisa ter alguma mercadoria.
O valor desses serviços serão calculados nas parcelas e no valor final do orçamento.
Checkout será preparado para receber os orçamentos que tenham serviços adicionais. Ele deve mostrar os serviços em uma tela especial na personalização da venda. Essa tela deverá permitir incluir, alterar e remover os serviços.
Os serviços não devem incidir sobre o cálculo de qualquer imposto, mas devem estar presentes no valor das parcelas.
Observação:
Atualmente o sistema já está preparado para garantia e serviços realizados pela própria empresa.
Com relação a garantia normal, ela é meramente informativa e será utilizada para o cálculo do prazo de abrangência da garantia estendida.
Já em relação ao serviço realizado pela própria empresa, este é vendido na própria nota e é tributado. Por isso, não pode ser utilizado para esse processo de serviços terceirizados.
Matriz de Compatibilidade
As alterações propostas nesse projeto levam em consideração a seguinte matriz de compatibilidade.
| Commerce | Checkout | Funciona com? |
|---|---|---|
| 5.0H em diante | Versão do Projeto | Não, Checkout necessitará que a versão mínima do Commerce seja a Versão do Projeto. |
| Versão do Projeto | 5.2A em diante | Sim, mas os serviços adicionais não poderão ser vendidos. |
| Versão do Projeto | Versão do Projeto | Sim |
Especificação Técnica
Configurações Necessárias
Atualmente é possível cadastrar nos itens de grade as garantias normais do produto.

Imagem de onde se configura a garantia normal
Será necessário configurar convênio para recebimento de títulos de terceiro se quiser trabalhar com serviços vendidos de maneira avulsa. O sistema gerará automaticamente um recebimento genérico para serviços adicionais.

Imagem com exemplo do recebimento do Totali Parking
Config
Será criada nova configuração em Vendas chamada Serviços Adicionais [TD_SAD].
Definição dos Campos:
Descrição. Ex.: Garantia estendida, seguro, etc. [edit]
Se sugere ao orçar. [checkbox]
Soma garantia na cobertura com ele marcado começará a valer depois do tempo de garantia normal. [checkbox]
Se permite venda avulsa do serviço adicional. [checkbox]
Para venda avulsa (sem vínculo com mercadoria). [checkbox]
% sobre valor, caso seja para venda avulsa. [edit]
Preço do serviço, caso seja para venda avulsa. [edit]
Convênio para recebimentos de título de terceiros, caso permitir venda avulsa. [combo]
Se imprime documento no Checkout. [checkbox]
Fórmula para impressão, caso imprimir documento no Checkout. [memo]
- Colocar label indicando que a fórmula pode ser modificada no próprio Checkout.
Tipo do Tempo do Serviço [combo]
Tempo do Serviço/Cobertura. [edit]
Numeração inicial do controle do serviço [edit].
Desconto máximo. [edit]
Acréscimo máximo. [edit]
Validações:
- Não deixar gravar serviço adicional para venda avulsa se já tiver sendo utilizado em algum produto [TT_SAD].
- Somente permitir % sobre Valor se for para venda avulsa.
- Somente permitir Preço do serviço se for para venda avulsa.
- Obrigar que tenha % ou preço quando for para venda avulsa. Nunca os dois ao mesmo tempo.
Backoffice
Cadastro de Usuários
Criar as novas permissões:
- PERM001 - Criar permissão para acessar e cadastrar serviços adicionais no Backoffice.
- PERM002 - Criar permissão para modificar termos dos serviços adicionais ao orçar e vender.
- PERM003 - Criar permissão para acessar tela de venda de serviços adicionais avulsos no Order.
- PERM004 - Criar permissão para acessar tela de consulta de serviços adicionais no Backoffice e Order.
Cadastro de Serviços Adicionais
Será criado um novo cadastro para que o usuário possa cadastrar os serviços adicionais.
O acesso a essa tela será controlado por permissão específica [PERM001].
Deverá ser uma tela estilo manutenção, com filtro a esquerda e um grid com botões a direita.
Filtros de pesquisa:
- Filial
- Produto
- Tipo de serviço adicional
- % sobre valor
- Preço do serviço
- Data de atualização
- Data de inclusão
Botões da pesquisa:
- Pesquisar
Ordenação:
- Data de inclusão decrescente. [padrão para quando não houver filtro]
- Data de atualização decrescente.
- Filial, Tipo de serviço adicional, data de inclusão decrescente.
- Filial, Tipo de serviço adicional, data de atualização decrescente.
Definição dos campos do grid:
- Filial [readonly]
- Produto [combodlg]
- Nome do Produto [readonly]
- Especificação técnica [readonly]
- Divisão [readonly]
- Subdivisão [readonly]
- Tipo do Serviço [combo baseado nos serviços adicionais cadastrados]
- % do Serviço em Relação ao Preço de Venda [edit com formatação]
- Valor do Serviço [edit com formatação]
- Data de atualização [readonly]
- Data de inclusão [readonly]
Botões do grid:
- Incluir
- Excluir
Botões do painel direito:
- Cancelar
- OK
Validações:
- Obrigar tipo do serviço.
- Não permitir gravar qualquer mudança na garantia se o tipo estiver desativado. Verificar essa condição ao gravar.
- Obrigar que tenha valor ou %, nunca os dois, nunca sem nenhum dos dois.
- Deverá só permitir serviços que não sejam para venda avulsa [TD_SAD.VENAVU = "F"].
Manutenção de Notas
Na tela de manutenção de notas, no Backoffice, os dados da garantia estarão disponíveis para relatórios do ReportBuilder.
Consulta de Serviços Adicionais
Será desenvolvida uma tela simples para consulta dos serviços adicionais e será disponibilizada no menu Parceiro do Backoffice e Order. Essa tela necessitará de permissão especial [PERM004].
Haverá nela filtros relacionados ao cliente, documento que gerou o serviço (nota ou título de terceiros) e informações do próprio serviço (data, sequenciador, número de série).
Tela deve ter um grid para os serviços adicionais a direita. Esse grid deve ter todas as informações do filtro e mais outras informações que possam ser úteis relacionadas ao serviço.
Ao selecionar um serviço adicional vendido [TT_SAV] no grid de cima, sistema deve mostrar em um grid logo abaixo alterações realizadas [TL_SAV].
Nota:
Não foi solicitado isso no projeto. O cliente levando o contrato que provavelmente é assinado talvez vendedor não precise consultar no sistema.
Porém, não tem interface para ver as alterações. As únicas alterações possíveis são em relação a situação do serviço vendido.
Em caso de cancelamento da venda ou recebimento de título de terceiro, o sistema cancela o serviço.
Order
Sugestão de Serviços Adicionais
Na tela de orçamento, após usuário informar um produto e quantidade, se esse produto tiver um serviço adicional configurado para sugerir ao vender [TD_SAV.SUGORC], o sistema deve apresentar uma tela mostrando um grid com as opções de serviços.
Deve-se filtrar apenas os serviços aplicáveis ao produto [TT_SAD.FILMAT, CODMAT, CODCOR e CODTAM].
As opções devem aparecer ordenadas por tipo de serviço (alfabeticamente).
Nota:
A tela de exemplo se tornou ultrapassada. A ideia é trazer uma coluna para o usuário pode fazer múltipla escolha.
Nenhum item deve vir marcado por padrão, e a tecla Esc deve funcionar para o caso do cliente não querer nenhum serviço adicional.
Os campos dessa tela devem ser readonly, exceto o campo de quantidade. A quantidade deverá vir igual a quantidade informada no item. Mas o usuário poderá modifica-la livremente.
Ao modificar a quantidade a tela deve modificar o valor total.
Quando o serviço é em percentual, o valor deve ser calculado a partir do valor líquido proporcional, ou seja, com todos os descontos dos totais do plano.
Tela deve apresentar mensagem no rodapé:
"Valores sujeitos a variação de acordo com a condição de pagamento, frete e desconto/acréscimo escolhidos."
Para cada unidade o sistema deve gerar um novo serviço adicional vendido [TT_SAV] vinculado ao item de orçamento. Os serviços adicionais serão sempre unitários porque podem fazer referência a um número de série de uma mercadoria.
Definição das colunas do grid:
- Descrição da garantia [coluna readonly]
- Serviço Expresso em [coluna readonly ou combo]
- Serviço Validade [coluna readonly]
- Valor Unitário [coluna formatada readonly]
- % sobre Preço [coluna formatada readonly]
- Quantidade [coluna formatada]
- Valor Total [coluna formatada readonly]
Nota:
Essa tela vai mostrar TT_SADs vinculadas ao item e incluir registros na TT_SAV.

Tela de Sugestão de Serviços Adicionais no Order
Além disso, deve-se criar um botão no grid de itens para que o cliente possa adicionar novos serviços ao item que estiver selecionado.
Sistema deve agir da mesma forma que agiria na sugestão de serviço.
Sistema deve verificar ao clicar no botão se já existe serviços vinculados àquele item.
No caso de já existir, deve solicitar confirmação do usuário se deseja descartar os serviços previamente definidos para aquele item.
Caso o usuário confirme, ele deve apagar os registros da SAV vinculados àquele item.

Botão para adicionar serviços a itens
Validações:
- Somente sugerir serviços quando item for mercadoria.
- Garantir que todo serviço adicional tenha algum valor.
- Somente permitir modificar itens que não tenham sido vendidos.
- Nunca excluir um serviço que não esteja aberto [TT_SAV.FLGEST = "A"].
Visualização e Negociação de Serviços Adicionais
Será criada na guia de itens de orçamento um novo grid para visualizar, incluir, editar e excluir serviços adicionais vinculados ao orçamento. Esse grid aparecerá automaticamente se o vendedor incluir algum serviço através da tela de sugestão de serviços adicionais. Será criado um botão a direita do grid de itens para mostrar ou esconder esse grid.

Grid de Serviços Adicionais no Order
Será criada uma nova guia chamado Serviços Adicionais.
Ela ficará entre os itens e os totais porque nela visualizamos dados dos itens. E seus valores influenciam nos totais.
Ela terá um grid com botões
Na área do grid haverá um botão de incluir e outro de excluir.
Serviços adicionais que não estejam vinculados a nenhum item poderão ser incluídos também.
Deve ser respeitada a regra que o serviço adicional vinculado a um produto [TT_SAD.FILMAT, CODMAT, CODCOR e CODTAM] precisa estar vinculado a um item com aquele produto. E serviço adicionais não vinculados a produto não podem estar vinculados a item.
Esse grid também deve permitir ao usuário, mediante uma permissão especial [PERM002], alterar os termos do serviço. Não será permitido mudar o tempo, apenas valores.
Quando o serviço é em percentual, o valor deve ser calculado a partir do valor líquido proporcional, ou seja, com todos os descontos dos totais do plano.
Quando o serviço não é vinculado ao item, o cálculo deve ser sobre o valor final do orçamento (sem a inclusão do valor dos serviços).
Informações adicionais como número de série e observação não necessitam de permissão especial e devem estar disponíveis sempre que o serviço estiver na situação aberto [TT_SAV.FLGEST = "A"].
Definição das colunas do grid:
- Situação [ícone utilizar mesma simbologia da situação do item de orçamento]
- Serviço [combo readonly quando vinculado a item. Combo com opções de serviços de venda avulsa ao incluir novo serviço.]
- Tipo da Validade do Serviço [coluna readonly ou combo]
- Validade do Serviço [coluna readonly]
- Valor Unitário [coluna formatada readonly]
- % sobre Preço [coluna formatada readonly]
- Valor Total [coluna formatada]
- Número de Série [coluna]
- Observação [richedit]
- Item a que se refere [coluna readonly]
- Número Seq. Contrato [coluna readonly]
Sistema deve permitir que o valor total possa ser modificado respeitando as margens configuradas no serviço adicional [TD_SAD.DESMIN e ACRMAX].
Ao cancelar um item da DAV (cancelando ou modificando a quantidade), sistema deve apagar os registros do serviço vendido [TT_SAV] relacionados aquele item. Sistema não deve trazer serviços cancelados em nenhuma tela do Order. Se o registro do serviço vendido estiver faturado [TT_SAV.FLGEST = "F"], sistema não pode permitir alteração na quantidade do item ou cancelamento<strike>Exclusão.
Se o tipo de serviço tiver tempo de cobertura [TD_SAD.TIPVAL > 0], sistema deve calcular a data inicial e final dessa cobertura [TT_SAV.DATINI e DATFIM].
Se o serviço estiver vinculado a uma mercadoria, e estiver configurado para estender o tempo da garantia [TD_SAD.SOMGAR], começar sua contagem a partir do fim da garantia normal do produto [TT_GRA.TIPVAL e TT_GRA.VALIDA].
Caso contrário, gravar o dia atual como data inicial da cobertura e calcular.
Validações:
- <strike>Não permitir fazer um orçamento apenas com serviços adicionais. É necessário que exista alguma mercadoria no orçamento, mesmo que não exista vínculo com os serviços.
- Somente permitir vincular serviços a mercadorias.
- Garantir que todo serviço adicional tenha algum valor.
- Não permitir modificar serviços adicionais que estejam com a situação faturado ou cancelado.
- Garantir que o serviço não esteja vinculado a mais de um serviço do mesmo tipo.
- Obs.: item 1 não pode estar vinculado a duas garantias estendidas de 24 meses.
- Ou item 1 pode estar vinculado a uma garantia estendida de 12 meses e a outra de 24 meses.
- Entretanto, o item 1 pode estar vinculado a uma garantia estendida e a um seguro ao mesmo tempo.
- Tratar para cópia de orçamentos não puxar nenhum serviço adicional.
Totais na Tela de Orçamento
Nos totais do orçamento o sistema deve mostrar a soma de todas as garantias e alterar o campo total.
O valor da garantia não tem relação nenhuma com os valores do orçamento e cálculos de impostos. Ele será somado no total final do orçamento para que o usuário saiba o preço final do orçamento.
Também deve estar presente no cálculo do valor das parcelas (campos entrada e parcela).

Guia de totais do Order
Materializar os totais dos serviços adicionais [TT_ORC.VLRSAD].
Validações:
- Valor adicional deve incluir no cálculo das parcelas e no valor final do orçamento, mas não deve influenciar em impostos como IPI e desconto/acréscimo dado diretamente nos itens.
Checkout
Venda e Resgate de Orçamento
O Checkout será alterado para permitir venda de serviços adicionais vinculados a alguma mercadoria.
O Checkout será alterado para permitir cobrar e imprimir serviços adicionais vinculados ao orçamento.
Nota:
Em comparação ao Order, o Checkout não terá a opção de sugerir serviços adicionais no momento da inclusão dos itens e
não permitirá alterar o item na qual o serviço está vinculado.
Demais regras para inclusão de um serviço vendido deverão ser iguais.
Na tela de personalização da venda [F10] deve aparecer um campo mostrando o valor total de serviços adicionais inclusos.
Também deve aparecer um botão para chamar uma tela com grid para usuário incluir, alterar e remover os serviços.
Deve ser respeitada a regra que o serviço adicional vinculado a produto [TT_SAD.FILMAT, CODMAT, CODCOR e CODTAM] precisa estar vinculado a um item com aquele produto. E serviço adicionais não vinculados a produto não podem estar vinculados a nenhum item.
Semelhante a guia de serviços adicionais do Order, deve ser permitido ao usuário editar os valores do serviço, porém, não será permitido mudar a qual item o serviço está vinculado. Para modificar essas informações o usuário precisará ter permissão específica [PERM002].
Informações adicionais como número de série e observação não precisam de permissão especial para serem modificados.
O valor do serviço deve ser somado nas parcelas, mas não deve interferir no cálculo de nenhum imposto.
Quando o serviço é em percentual, o valor deve ser calculado a partir do valor líquido proporcional do item, ou seja, com todos os descontos dos totais do plano.
Quando o serviço não é vinculado ao item, o cálculo deve ser sobre o valor líquido da venda (sem o valor dos serviços).
Deve-se verificar quais são as colunas do serviço adicional que foram alteradas e gravar a atualização no banco de dados.
Gravar o número sequencial [TT_SAV.NUMSEQ] e mudar a situação do serviço para faturado [TT_SAV.FLGEST = "F"].
Checkout deve materializar a soma dos serviços adicionais em uma nova coluna [TT_VEN.VLRSAD].
Fórmula para Impressão do Serviço
Deve-se tratar o Checkout para poder editar a fórmula da impressão [TD_SAD.FORIMP].
Tratar para não resgatar um orçamento se esse for de um tipo que imprime certificado [TD_SAD.IMPDOC = "T"] e não tiver fórmula definida.
Tratar na tela de inclusão de serviços adicionais para também não deixar incluir um serviço que imprima sem que a fórmula esteja definida para ele.
Certificado do Serviço
No final do processo de venda, quando ECF estiver liberado, Checkout deve imprimir os termos do serviço conforme modelo especificado na configuração do tipo de serviço se o serviço estiver configurado dessa forma [TD_SAD.IMPDOC = "T"].
Conforme a legislação do PAF, os termos devem ser impressos em impressora fiscal na forma de relatório gerencial no ECF ou em impressora não-fiscal.
O modelo do certificado deve ser editável no próprio Checkout e deve ter todas as informações necessárias para se imprimir conforme exemplo.
Exemplo de termo de garantia: \\ttadm\Anexos_PRJ\Lojas Presidente\Garantia Estendida\Certificado Mega Garantia.pdf
Numeração de Controle do Serviço
Para permitir que o cliente tenha uma numeração única por loja, será criado um controle por arquivo .dbf no Checkout chamado SERVICOS.dbf. Este será gravado no mesmo diretório que o NUMNOT.dbf para ser visível por todas as ECFs da loja.
Arquivo deve ser composto por duas colunas, uma com uma chave única para identificar o serviço adicional e outra para preservar o último código gerado.
Deve se usar a chave primária do Dom. Serviço Adicional [TD_SAD.CODTAB] como identificação única. E é necessário levar em consideração a numeração inicial configurada [TD_SAD.NUMINI]. Quando não houver numeração inicial deve começar com 1.
Com esse código sequencial , o sistema pode gerar na fórmula da impressão do serviço uma numeração como, por exemplo, a seguinte:
ANO Vigente + CODIGO DA LOJA + SEQUENCIAL, totalizando 15 posições. Ex.: 201300001000001
Essa coluna será gravada no banco de dados e estará disponível para impressão em relatórios relacionados com a venda.
Recebimento da Venda
O valor das parcelas a serem pagas pelo cliente vão constar o valor dos serviços.
Para o TEF deve-se respeitar a regra:
- CF no valor dos produtos
- Comprovante não Fiscal no valor da garantia
- Comprovante de Débito e Crédito (TEF) no valor pago em cartão
Serviços Adicionais Avulsos
Venda de Serviços Adicionais Avulsos no Order
Movido para a fase II.
Recebimento de Títulos de Terceiros no Checkout
Movido para a fase II.
Estorno de Títulos de Terceiros
Movido para a fase II.
Mudanças na Estrutura dos Dados
Será criada tabela para definir serviços adicionais.
Dom. Serviços Adicionais [TD_SAD]
| Coluna | Descrição | Tipo | Aceita nulo? | Restrições |
| CODTAB | Código | NUMBER(5) | Não | PK |
| DESSAD | Descrição | VARCHAR(100) | Não | |
| SADATI | Ativo? | VARCHAR(1) | Não | CK ("T" ou "F") Default "T" |
| SUGORC | Sugere ao orçar? | VARCHAR(1) | Não | CK ("T" ou "F") Default "F" |
| VENAVU | Permite venda avulsa? | VARCHAR(1) | Não | CK ("T" ou "F") Default "F" |
| VALSAD | Valor do Serviço (em R$) | NUMBER(12,2) | Sim | CK (obrigar que VALSAD ou PERSAD estejam preenchidos quando VENAVU = "T") |
| CK (obrigar que quando preenchido seja valor positivo maior que 0) | ||||
| PERSAD | % sobre Preço Total | NUMBER(5,2) | Sim | CK (obrigar que quando preenchido seja valor positivo maior que 0) |
| CODRTT | Convênio para recebimento | NUMBER(5) | Não | FK (com PK da TD_RTT) |
| IMPDOC | Imprime documento? | VARCHAR(1) | Não | CK ("T" ou "F") Default "F" |
| FORIMP | Fórmula para impressão | VARCHAR(4000) | Sim | CK (obrigar preenchimento se IMPDOC = "T") |
| TIPVAL | Tipo do Tempo de Validade do Serviço | NUMBER(1) | Não | CK (3 - Anos / 1 - Dias / 2 - Meses / 0 - Não Controla) |
| VALIDA | Garantia/Validade | NUMBER(5) | Sim | CK (obrigar preenchimento se TIPVAL > 0) |
| SOMGAR | Soma garantia na cobertura? | VARCHAR(1) | Não | CK ("T" ou "F") Default "F" |
| NUMINI | Número inicial do controle do serviço | NUMBER(10) | Sim | |
| DESMIN | Desconto máximo | NUMBER(8,4) | <span style="background-color:#EEFF00">Sim</span> | CK (se preenchido deve ser > 0) |
| ACRMAX | Acréscimo máximo | NUMBER(8,4) | <span style="background-color:#EEFF00">Sim</span> | CK (se preenchido deve ser > 0) |
Será criada nova tabela para cadastro de garantia estendida.
Serviços Adicionais [TT_SAD]
| Coluna | Descrição | Tipo | Aceita nulo? | Restrições |
| CODFIL | Filial | CHAR(3) | Não | PK |
| SEQUEN | Sequenciador | CHAR(10) | Não | PK |
| DATINC | Data da Inclusão | DATE | Não | |
| ATU_EM | Data da Atualização | DATE | Não | |
| FILMAT | Filial do Produto | CHAR(3) | Sim | FK (com PK da TT_GRA) |
| CODMAT | Código do Produto | CHAR(5) | Sim | |
| CODCOR | Divisão | NUMBER(5) | Sim | |
| CODTAM | Subdivisão | NUMBER(5) | Sim | |
| CODSAD | Tipo de Serviço Adicional | NUMBER(5) | Não | FK (com PK da TD_SAD) |
| VALSAD | Valor do Serviço (em R$) | NUMBER(12,2) | Sim | CK (obrigar que VALSAD ou PERSAD estejam preenchidos) |
| CK (obrigar que quando preenchido seja valor positivo maior que 0) | ||||
| PERSAD | % sobre Preço do Produto | NUMBER(<span style="background-color:#EEFF00">5</span>,2) | Sim | CK (obrigar que quando preenchido seja valor positivo maior que 0) |
Será criada nova tabela para gravar os serviços adicionais adquiridos pelo cliente.
Serviços Adicionais Vendidos [TT_SAV]
| Coluna | Descrição | Tipo | Aceita nulo? | Restrições |
| CODFIL | Filial | CHAR(3) | Não | PK |
| SEQUEN | Sequenciador | CHAR(10) | Não | PK |
| DATINC | Data de Inclusão | DATE | Não | |
| ATU_EM | Data da Atualização | DATE | Não | |
| FILPED | Filial do Orçamento | CHAR(3) | Sim | CK (Tem obrigar que tenha relação com TT_ORC, TT_VEN ou TT_RTT através da regra: |
| Se FILPED está preenchido, FILVEN e CODAVU devem ser nulos. | ||||
| Se FILVEN está preenchido, FILPED e CODAVU devem ser nulos | ||||
| Se CODAVU está preenchido, FILPED e FILVEN devem ser nulos) | ||||
| FK (Com PK da TT_ORC) | ||||
| Trigger (tratar para não permitir mudar o vínculo depois de gravado. Ex.: se for feito a partir de DAV então tem vínculo com TT_ORC. Se for feito direto na venda terá vínculo com TT_VEN. Se for feito de maneira avulsa terá vínculo com TT_RTT) | ||||
| TIPPED | Tipo do Orçamento | CHAR(1) | Sim | |
| NUMPED | Número do Orçamento | CHAR(8) | Sim | |
| NUMITE | Número do Item do Orçamento | |||
| FILVEN | Filial da Venda | CHAR(3) | Sim | FK (Com PK da TT_VEN) |
| SEQVEN | Sequenciador da Venda | CHAR(10) | Sim | |
| NUMIVE | Número do Item da Venda | |||
| CODAVU | Código avulso antes do faturamento para serviço adicional avulso | VARCHAR(20) | Sim | UQ (somente dessa coluna) |
| FILRTT | Filial do Recebimento de Terceiros | CHAR(3) | Sim | FK (Com PK da TT_RTT) |
| SEQRTT | Sequenciador do Recebimento de Terceiros | CHAR(10) | Sim | |
| TIPVAL | Tipo do Tempo de Validade do Serviço | |||
| VALIDA | Garantia/Validade | NUMBER(2) | Não | |
| VALSAD | Valor do Seguro (em R$) | NUMBER(12,2) | Não | |
| FLGEST | Situação do Serviço Adquirido | CHAR(1) | Não | CK (permitir somente "A" aberto / "F" faturado) |
| NUMSER | Número de Série do Produto Vinculado | VARCHAR(20) | Sim | |
| NUMSEQ | Número Sequencial do Contrato | NUMBER(10) | Sim | CK (obrigar preenchimento se FLGEST = "F") |
| OBSERV | Observação | VARCHAR(4000) | Sim | |
| DATINI | Data de Início da Cobertura do Serviço | DATE | Sim | |
| DATFIM | Data de Fim da Cobertura do Serviço | DATE | Sim | |
| CODSAD | Tipo do Serviço | NUMBER(5) | Não | FK (com PK da TD_SAD) |
| VENAVU | Permite venda avulsa? | VARCHAR(1) | Não | CK ("T" ou "F") Default "F" |
| VALSADORI | Valor do Serviço Original (em R$) | NUMBER(12,2) | Sim | CK (obrigar que VALSADORI ou PERSADORI) |
| CK (obrigar que quando preenchido seja valor positivo maior que 0) | ||||
| PERSADORI | % Original sobre Preço Total | NUMBER(5,2) | Sim | CK (obrigar que quando preenchido seja valor positivo maior que 0) |
Por enquanto não controlaremos a situação de cancelamento da venda.
Em caso de cancelamento ou devolução, partimos do princípio que o cliente não está de posse da mercadoria.
No caso do estorno de recebimento de terceiros, o sistema vai voltar a situação para aberto e vai apagar o NUMSEQ.
Será criada nova tabela de log para registrar alterações nos serviços adicionais vendidos.
Registro de Alterações de Serviços Adicionais [TL_SAV]
| Coluna | Descrição | Tipo | Aceita Nulo? | Restrições |
| CODTAB | Código | NUMBER(10) | Não | PK |
| FILSAV | Filial do Serviço | CHAR(3) | Sim | FK (para PK da TT_SAV) |
| SEQSAV | Seq. Serviço | CHAR(10) | Sim | |
| DATOPE | Data Inclusão | DATE | Sim | |
| FILUSU | Filial do Usuário | CHAR(3) | Sim | FK (para PK da TT_USU) |
| CODUSU | Código do Usuário | CHAR(3) | Sim | |
| MSGLOG | Mudança | VARCHAR(4000) | Sim | |
| CODUID | Identificador Acesso | NUMBER | Sim | FK (para PK da TT_UID) |
Alterações serão registradas em logs da seguintes forma.
As alterações da TD_SAD serão gravadas automaticamente na TL_CFG.
As alterações da TT_SAD serão gravadas na TL_GRA.
As alterações da TT_SAV serão gravadas na TL_SAV.
Será criado automaticamente um tipo de recebimento de terceiros chamado "Serviços Adicionais".
- Serão criadas as contas financeiras para esse devido fim.
Será criado sequenciador para código avulso da TT_SAV.
- Será alterada a função PROXIMO_NUMERO também.
Resumo de Mudanças por Módulo
Banco de dados
- Nova tabela Dom. Serviços Adicionais [TD_SAD]
- Nova tabela Cadastro de Serviços Adicionais [TT_SAD]
- Nova tabela Serviços Adicionais Vendidos [TT_SAV]
- Nova tabela Registro de Alterações de Serviços Adicionais [TL_SAV]
- Registrar log de alterações nos serviços por trigger.
- Criar convênio de recebimento de terceiros padrão para serviços adicionais com suas respectivas contas financeiras.
- Criar sequenciador para código avulso para serviços adicionais vendidos de maneira avulsa.
- Criar coluna para guardar soma dos serviços adicionais da venda [TT_VEN.VLRSAD].
- Tratar em todos os locais do sistema que soma o valor das parcelas e compara com valor líquido para somar junto o valor do serviço daquela nota.
- Criar coluna para guardar soma dos serviços adicionais do orçamento [TT_ORC.VLRSAD].
Config
- Criar tela de configuração para TD_SAD.
Backoffice
- Criação de novas permissões.
- Modificar cadastro de usuários para as novas permissões.
- Criar guia para cadastrar serviços adicionais na tela de produtos.
Order
- Tratar na inclusão de novos itens mostrar tela de serviços adicionais.
- Criar tela de serviços adicionais.
- Criar guia de serviços adicionais.
- Modificar parcelas e totais do orçamento.
- Criar tela de venda de serviços adicionais avulsos.
Checkout
- Fazer carga dos tipos de serviços adicionais [TD_SAD].
- Resgatar serviços adicionais do orçamento.
- Criar botão para chamar tela de serviços adicionais na personalização de venda.
- Criar uma tela de serviços adicionais.
- Modificar parcelas e totais da venda.
- Materializar soma dos serviços adicionais da venda.
- Imprimir os certificados na tela de caixa.
- Tratar recebimento de títulos de terceiros para receber serviços adicionais avulsos.
- Tratar estorno do recebimento de títulos de terceiros para permitir desfazer o negócio.
- Imprimir os certificados na tela de caixa ao receber pelos títulos de terceiros.