Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

(Obrigatório)

Informações Gerais

 

Especificação

Produto

Protheus

Módulo

SIGAPCP

Segmento Executor

 

Projeto1

M_MAN_PCP002

Epic

MANCORE1-35

Story

MANCORE1-130

Subtarefa1

 

Chamado2

 

País

( x ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

<Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>.

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

(Obrigatório)

Objetivo

 

Enviar o saldo de estoque do Protheus para o PC-Factory, por meio de solicitação do PC-Factory.

Enviar registros de saldo de estoque quando ocorrer alguma movimentação.

 

(Obrigatório)

Definição da Regra de Negócio

 

Gerenciar o envio de saldos em estoque do Protheus para o PC-Factory.  Será criado duas opções de envio. A primeira será via Request, onde o PC-Factory solicita um saldo. A segunda startada via alguma movimentação que atualiza o saldo.


  1. Request


Para este tipo de atualização o PC-Factory solicita o saldo ao Protheus. 
Será a usada a mensagem StockLevel_2_00. A mensagem possui duas partes. A parte de Request , onde são passados os parâmetros para o consulta do saldo, e a parte do Return, que contem o retorno do saldo.

O Request da mensagem possui as seguintes tags que serão usadas para o Protheus:

BlocoTagDescriçãoObservação
RequestItemItemInternalIdCódigo do produto 
RequestItemWarehouseInternalIdCódigo do depósito/local de estoque/Armazém 
RequestItemLotNumberLote 
RequestItemSubLotCodeSubLote 
RequestItemSerialNumberNúmero de Série 
RequestItemAddressLocalização 
RequestItemLotExpirationDateData de Validade 

A busca pode ocorrer das seguintes formas:
Por Produto: Retorna informação de todos os locais de estoque do produto.
Por Local de Estoque(Armazém): Retorna informação de todos os produtos no local de estoque.
Por Local de Estoque(Armazém) e Produto: Retorna informação sobre o Produto no Local de Estoque definido.

Para os demais campos, Lote, sub-Lote, número de série, localização e data de validade considerar somente se informar o código do produto. Se enviar estes campos sem o código do produto deve retornar mensagem de erro.


O Return da mensagem possui as seguintes  tags para o Protheus: 

 

BlocoTagDescriçãoObservação
ReturnItemCompanyIdEmpresa 
ReturnItemBranchIdFilial 
ReturnItemCompanyInternalIdEmpresa|Filial 
ReturnItemItemInternalIdCódigo do produtoSB2.B2_COD
ReturnItemReferenceCodeReferenciaNão usa
ListOfStockBalanceWarehouseInternalIdLocal de Estoque(Armazém/Depósito)SB2.B2_LOCAL
ListOfStockBalanceLotNumberNúmero do LoteSB8.B8_LOTECTL 
ListOfStockBalanceLotExpirationDateData de validadeSB8.B8_DTVALID
ListOfStockBalanceSerialNumberNúmero de sérieSBF.BF_NUMSERI 
ListOfStockBalanceSubLotCodeSubLoteSB8.B8_NUMLOTE
ListOfStockBalanceAddressLocalizaçãoSBF.BF_LOCALIZ
ListOfStockBalanceCurrentStockAmountSaldo do Produto em quantidade

SB2.B2_QATU

SB8.B8_SALDO

SBF.BF_QUANT

ListOfStockBalanceBookedStockAmount

Quantidade reservada em Estoque

SB2.B2_RESERVA

SB8.B8_EMPENHO

SBF.BF_EMPENHO

ListOfStockBalance

AvailableStockAmount

Saldo disponível do Produto em quantidade

SB2.B2_QATU - SB2.B2_RESERVA

SB8.B8_SALDO - SB8.B8_EMPENHO

SBF.BF_QUANT - SBF.BF_EMPENHO

ListOfStockBalanceUnitItemCostCusto unitário do Produto---
ListOfStockBalanceAverageUnitItemCostCusto médio do Produto---
ListOfStockBalanceValueOfCurrentStockAmountSaldo atual do estoque do produto em valor---


Alterar mensagem StockLevel, gerando a versão 2_000. A mensagem terá o formato abaixo:

 

RequestItemItemInternalIdCódigo do Itemxs:string15
RequestItemWarehouseInternalIdCódigo do depósito/local de estoque/Armazémxs:string10
RequestItemLotNumberNúmero do Lotexs:string10
RequestItemSubLotCodeSub Lotexs:string10
RequestItemSerialNumberNúmero de Sériexs:string20
RequestItemAddressLocalização/Endereçoxs:string15
RequestItemLotExpirationDateData de validadexs:date 
     
ReturnItemCompanyIdEmpresaxs:string 
ReturnItemBranchIdFilialxs:string2
ReturnItemItemInternalIdCódigo do Itemxs:string 
ReturnItemCompanyInternalIdEmpresa|Filialxs:string 
ReturnItemReferenceCodeReferênciaxs:string20
     
ListOfStockBalance    
ListOfStockBalanceWarehouseInternalIdCódigo do depósito/local de estoque/Armazémxs:string10
ListOfStockBalanceUnitItemCostCusto unitário do Produtoxs:decimal17,4
ListOfStockBalanceAverageUnitItemCostCusto médio do Produtoxs:decimal17,4
ListOfStockBalanceCurrentStockAmountSaldo do Produto em quantidade xs:decimal17,4
ListOfStockBalanceAvailableStockAmountSaldo disponível do Produto em quantidadexs:decimal17,4
ListOfStockBalanceBookedStockAmountQuantidade reservada em Estoquexs:decimal17,4
ListOfStockBalanceValueOfCurrentStockAmountSaldo atual do estoque do produto em valorxs:decimal17,4
ListOfStockBalanceLotNumberNúmero do Lotexs:string10
ListOfStockBalanceSubLotCodeSub Lotexs:string10
ListOfStockBalanceLotExpirationDateData de Validadexs:date 
ListOfStockBalanceSerialNumberNúmero de Sériexs:string20
ListOfStockBalanceAddressLocalização/Endereçoxs:string15



1.1 MATI225

O Webservice deverá ser alterado para executar o adapter MATI225 

Do Case

..........
Case cTransac == "STOCKLEVEL" //Saldo de estoque
changeEmp(cEmpIntg,cFilIntg)
aAdapter := MATI225(oXml, TRANS_RECEIVE, EAI_MESSAGE_BUSINESS)

 

aAdd(aAdapter, cEmpIntg)
aAdd(aAdapter, cFilIntg)
aAdd(aAdapter, "MATI225")


Será alterado o adapter do saldo, MATI225 para tratar a nova versão da mensagem e também a integração com o PC-Factory. Criar funções v1000 e v2000 para tratar o xml de acordo com a versao

// Trata recebimento de mensagens
    Case ( nTypeTrans == TRANS_RECEIVE )
        Do Case
            // Recebimento da WhoIs
            Case ( cTypeMessage == EAI_MESSAGE_WHOIS )
                cXmlRet := '1.000'
            // Recebimento da Response Message
            Case ( cTypeMessage == EAI_MESSAGE_RESPONSE )
                cXmlRet := 'Mensagem processada'        
            // Receipt Message (Aviso de receb. em transmissoes assincronas)
            Case ( cTypeMessage == EAI_MESSAGE_RECEIPT )
                cXmlRet := 'Mensagem recebida'        
            // Recebimento da Business Message
            Case ( cTypeMessage == EAI_MESSAGE_BUSINESS )

                 CASE VERSAO = 1 OR VERSAO = ' ' OR VERSAO NULA 

                     aRet := v1000(cXml, nTypeTrans, cTypeMessage)

                CASE VERSAO = 2

                      aRet := v2000(cXml, nTypeTrans, cTypeMessage)

 ..................

................

 

A função v1000 deve executar o processo ATUAL, ou seja, tratando a versão 1 da mensagem.

A função v2000 deve executar o processo considerando as alterações da mensagem para atender a integração com o PC-Factory.
Na v2000 deve considerar as mesmas regras de seleção dos campos, o que vai mudar é somente o formato do XML.

 

Após executar a geração da mensagem de retorno o WebService já está preparado para enviar a resposta, que será o saldo. A resposta conterá apenas um XML. Este XML pode ter um ou vários REQUEST.

Exemplo de XML Request:

<?xml version="1.0" encoding="UTF-8"?>

<TOTVSMessage xsi:noNamespaceSchemaLocation=""

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <MessageInformation version="1.000">

        <UUID>459491c6-83bc-4bdf-9c49-71caac25de61</UUID>

        <Type>BusinessMessage</Type>

        <Transaction>stocklevel</Transaction>

        <StandardVersion>1.0</StandardVersion>

        <SourceApplication>PPI</SourceApplication>

        <CompanyId>99</CompanyId>

        <BranchId>01</BranchId>

        <Product version="12" name="PPI" />

        <GeneratedOn>2016-04-14T09:34:11.3137323-03:00</GeneratedOn>

    </MessageInformation>

    <BusinessMessage>

        <BusinessEvent>

            <Entity>stocklevel</Entity>

            <Event>upsert</Event>

        </BusinessEvent>

        <BusinessContent>

            <RequestItem>

                 <WarehouseInternalId>01</WarehouseInternalId>

                 <ItemInternalId>CRG01</ItemInternalId>

            </RequestItem>

        </BusinessContent>

    </BusinessMessage>

</TOTVSMessage>

 

           2. Movimentação


A integração deverá atualizar o saldo, sem que seja necessário realizar um request. Para atender essa necessidade deverá alterar as funções que atualizam saldo para gerar a mensagem.

Será a usada a mensagem ItemStockLevel_1_000.

 

BlocoTagDescriçãoObservação
BusinessContentTypeItemCodeCódigo do produtoSB2.B2_COD
BusinessContentTypeItemDescriptionDescrição do itemSB1.B1_DESC
ListOfStock   
ListOfStockReferenceCodeReferência------
ListOfStockWarehouseCodeDepósito/Local de estoqe/ArmazemSB2.B2_LOCAL
ListOfStockLotCodeNúmero do LoteSB8.B8_LOTECTL
ListOfStockSubLotCodeSub-LoteSB8.B8_NUMLOTE
ListOfStockNumberSeriesNúmero de SérieSBF.BF_NUMSERI
ListOfStockAddressCodeEndereço/LocalizaçãoSBF.BF_LOCALIZ
ListOfStockLotDueDateData de ValidadeSB8.B8_DTVALID
ListOfStockCurrentStockAmountSaldo de estoque

SB2.B2_QATU

SB8.B8_SALDO

SBF.BF_QUANT

ListOfStockBookedStockAmountQuantidade Reservada

SB2.B2_RESERVA

SB8.B8_EMPENHO

SBF.BF_EMPENHO

ListOfStockAvailableStockAmountSaldo disponível

SB2.B2_QATU - SB2.B2_RESERVA

SB8.B8_SALDO - SB8.B8_EMPENHO

SBF.BF_QUANT - SBF.BF_EMPENHO

ListOfStock
QuantityUpdated
Quantidade Atualizada 
ListOfStockInputOutputEntrada ou SaídaE ou S


2.1 Criar a mensagem

 

Incluir a nova mensagem ItemStockLevel contendo os seguintes campos:

 

BusinessContentTypeItemCodeCódigo Itemxs:string30
BusinessContentTypeItemDescriptionDescrição Itemxs:string40
ListOfStock    
ListOfStockReferenceCodeReferênciaxs:string20
ListOfStockWarehouseCodeDepósito/Local de estoqe/Armazemxs:string10
ListOfStock LotCodeNúmero do Lotexs:string10
ListOfStockSubLotCodeSub Lotexs:string10
ListOfStockNumberSeriesNúmero de Sériexs:string20
ListOfStockAddressCodeEndereço/Localizaçãoxs:string15
ListOfStockLotDueDateData de Validadexs:date 
ListOfStockCurrentStockAmountSaldo de estoquexs:decimal17,4
ListOfStockBookedStockAmountQuantidade Reservadaxs:decimal17,4
ListOfStockAvailableStockAmountSaldo disponívelxs:decimal17,4
ListOfStockQuantityUpdatedQuantidade atualizadaxs:decimal17,4
ListOfStockInputOutputEntrada ou Saídaxs:string1


 

 2,2 Atualização do saldo ( inlcusão do lote )

Quando incluir ou atualizar um saldo novo no ERP, deverá enviar a mensagem ao PC-Factory.

Todos os pontos que executam uma movimentação de estoque executam rotinas de atualização de saldo.

  • NF de Entrada  - Função B2ATUCOMD1
  • NF de Venda - Função B2ATUCOMD2
  • Mov. Internas - Função B2ATUCOMD3

Estas funções serão alteradas para executar o adapter com a opção de envio TRANS_SEND.

A execução do adapter nestas funções está condicionada a parametrização no PCPA109, do folder Saldo de Estoque. No PCPA109 também será definido o filtro sobre a tabela SB2.

 

2.2.1 Alterar Adapter MATI225 e MATA225 e funções de atualizações de saldo

Alterar as funções B2ATUCOMD1, B2ATUCOMD2 e B2ATUCOMD3 para executar a integração. Como será possível realizar filtros e algumas outras tratativas, deverá executar a função MATA225PPI que, depois de satisfazer os filtros deverá executar o adapter. Somente se o saldo for atualizado corretamente executar o adapter. Mesmo modelo do MATA010 MATI010.

Criar a função MATA225PPI. Nesta função deverá executar a geração.

aRet := MATI225(cXml, nTypeTrans, cTypeMessage)

Onde: nTypeTrans=TRANS_SEND

<função para enviar o XML para o WebService da PPI e recuperar o retorno> : PCPWebsPPI
Se o retorno for positivo poderá prosseguir com a inclusão/alteração e geração do XML nos diretórios correspondentes.
<função para gerar o XML nos diretórios> : PCPXmlPPI
<função para gerar tabela de integração SOF> : PCPCriaSOF

 

IMPORTANTE: Considerar a parametrização do PCPA109 que indica quais dessas funções deverá gerar a mensagem. Considerar a seguinte regra:

  • Caso SOE.OE_VAR1 = '1' a Função B2ATUCOMD1 deverá executar o MATA225PPI. 
  • Caso SOE.OE_VAR2 = '1' a Função B2ATUCOMD2 deverá executar o MATA225PPI. 
  • Caso SOE.OE_PARINTG = '1' a Função B2ATUCOMD3 deverá executar o MATA225PPI. 

             Exemplo na B2ATUCOMD1 :

            If l PCPIntgPPI() AND SOE.OE_VAR1 = '1'

                lRet := MATA225PPI()

           EndIf

  • Quando o saldo for atualizado por uma atualização do PC-Factory não deverá enviar mensagem de atualização de saldo. Deve validar a origem da atualização. 
    Na mensagem de apontamento de produção usa-se "Product name"  que indica quem está enviado o registro. No caso do TOTVS MES essa informação é gravada na SH6.H6_OBSERVA = 'TOTVSMES'.
    Quando for movimentação interna é registrado na SD3.D3_OBSERVA = 'TOTVSMES'. Desta forma somente executar as funções B2AtuComD1,B2AtuComD2 ou B2AtuComD3 se não for movimentação da PPI, ou seja, D3_OBSERVA diferente e TOTVSMES.
  • Na mensagem o campo QuantityUpdated corresponde a quantidade atualizada, ou seja, a quantidade que esta sendo movimentada. 
    Exemplo(B2AtuComD3):   Replace  B2_QATU    With B2_QATU    + (SD3->D3_QUANT   * nMultiplic) .
                                             Usar D3_QUANT para gerar a quantidade atualizada
  • Na mensagem o campo InputOutput indica se a movimentação é uma entrada ou saída. 
    Exemplo(B2AtuComD3):   Replace  B2_QATU    With B2_QATU    + (SD3->D3_QUANT   * nMultiplic) .
                                            Usar a variável nMultiplic para registrar. Se for menor que zero gravar 'S', senão gravar 'E'.

 

A função MATI225 será responsável pela geração do XML. Somente o envio - TRANS_SEND.

Cabeçalho:

Quando for executado via integração com PCFactory deverá montar o cabeçalho da mensagem que consta com as tags TOTVSMessage e MessageInformation.

Abaixo modelo:

<?xml version="1.0" encoding="UTF-8" ?>
<TOTVSMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="xmlschema/general/events/ItemStockLevel_1_000.xsd">
<MessageInformation version="1.000">
<UUID>d97aeb6f-1440-8c81-fc13-ec8cf87b82ad</UUID>
<Type>BusinessMessage</Type>
<Transaction>ItemStockLevel</Transaction>
<StandardVersion>1.0</StandardVersion>
<SourceApplication>dts11cordas8480</SourceApplication>
<CompanyId>10</CompanyId>
<BranchId>10</BranchId>
<UserId>xxx</UserId>
<Product name="Datasul" version="11.5.X"/>
<GeneratedOn>2015-07-10T16:25:21.971-03:00</GeneratedOn>

 <ContextName>PROTHEUS</ContextName>
<DeliveryType>Sync</DeliveryType>
</MessageInformation>
<BusinessMessage>
<BusinessEvent>
......................
</BusinessEvent>
....................
....................
<\BusinessMessage>


Onde:
TOTVSMessage xmlns:xsi Indica o xsd para gerarção do XML. Usar o conteúdo do modelo.
MessageInformation version Indica a versão da mensagem. Usar “1.000”
UUID : Sequencial usado pelo EAI. Gerar fixo “1’.
Type: Tipo da mensagem. Gerar fixo “BusinessMessage”
Transaction: Indica o que está sendo enviado. Gerar fixo “ItemStockLevel”
StandardVersion: Versão. Gerar fixo “1.0”
SourceApplication: Aplicação que está executando. Gerar fixo “SIGAPCP”
CompanyId: Código da empresa. Empresa que estiver logada
BranchId: Código da filial. Filial logada.
UserId: Usuário. Usuário logado.
Product: Nome do produto. Name = Rotina que foi executada pelo menu | version = versão do programa.
GenerateOn = Data e hora da geração da mensagem

ContextName = Protheus
DeliveryType:Tipo de envio da mensagem. Gerar fixo “Sync”.

Dentro do BusinessMessage existe o bloco BusinessEvent com as seguintes tags:

<BusinessEvent>
<Entity>ItemStockLevel</Entity>
<Event>upsert</Event>
<Identification>
<key name="InternalId">651140049</key>
</Identification>
</BusinessEvent>

Onde:
Entity: Entidade . Gerar fixo “ItemStockLevel”
Event: Inclusão/Alteração ou exclusão. Pode ser ‘delete’ ou ‘upsert’
Identification: Código do item
Usar key name="InternalID" : gerar com o código do item B2_COD

Dentro do BusinessMessage existe o bloco BusinessContent, que contém os dados do saldo do item. Ver na tabela da mensagem.

 

Filtros e geração do XML ():

No cadastro de parâmetros PCPA109, é definido se gera o arquivo XML nos diretórios. Quando este indicador, OD_GERAXML, estiver como 2('N') não será gravado o arquivo XML nos diretórios correspondentes. Será gravado apenas o conteúdo em tabela (SOF).
Caso o indicador , OD_GERAXML, estiver como 1('S') deverá seguir a seguinte regra de geração:
- Processados com sucesso : XML processado pelo PPI com retorno do PCFactory OK. XML será gravado no diretório cadastrado no campo Enviados(OD_DIRENV) do PCA109.
- Processados sem sucesso : XML processado pelo PPI com retorno de ERRO pelo PCFactory ou WebService desligado ( não conseguiu enviar o XML).
 XML será gravado no diretório definido no campo Pendência (OD_DIRPEND) do PCA109. Caso gerar pendência, não deverá ser questionado se deseja salvar os dados, sempre deverá gerar pendência. 


Em ambos os casos(sucesso ou erro/pendencia), ocorrendo o commit, será gerada a tabela SOF.

Importante: Os arquivos XML´s gerados e dados da tabela SOF somente serão gerados se a inclusão/alteração/exclusão do saldo for comitada no banco.
Os nomes do arquivos seguirão o seguinte padrão:
OK_<MSG>_<DATAHORA>_<REGISTRO>
PEND_<MSG>_<DATAHORA>_<REGISTRO>
ERR_<MSG>_<DATAHORA>_<REGISTRO>
Onde: OK - Se mensagem entregue sem problemas
PEND- Se mensagem não foi enviada
ERR - Se mensagem enviada, porém retornou erro.
MSG - ITEMSTOCKLEVEL
DATAHORA: Data e Hora do envio
REGISTRO: Código do item


A tabela SOF conterá os seguintes campos:

Transação : Nome da tabela (SB2)
Registro : código do item
Status: 1 - OK; 2 - Pend; 3 - Erro
Gerou XML : Sim ou não
Nome arquivo XML
Data Envio
Hora de envio
Usuário
Mensagem de retorno do PCFactory
Xml : Conteúdo do XML
Programa: Rotina que gerou o registro
Data Reprocessamento : Quando reprocessado pela rotina de pendências
Hora Reprocessamento : Quando reprocessado pela rotina de pendências

IMPORTANTE:

  • Só poderá ter uma pendência para o registro.
  • Para gerar o XML e gravar a tabela SOF terá que respeitar as pendências geradas. Se existir uma pendência de envio de algum registro e for gerada uma nova mensagem para o mesmo registro a pendencia deverá ser excluída e trabalhar somente com a última mensagem, que poderá ser enviada sem problemas ou gerar nova pendência. 


Filtros:
No PCPA109 são definidos os filtros que indicam quais registros serão enviados ao PCFactory.

Para o saldo em estoque poderá ter até 3 filtros. Filtro da tabela SB2, SB8 e SBF.


Deverá ler os dados da tabelas SOE onde o campo OE_TABELA seja = 'SB2', OE_TABELA seja = 'SB8' e OE_TABELA seja = 'SBF'. Deverá fazer o JOIN destas tabelas para montar o filtro.

O campo OE_FILTRO conterá o filtro que deverá ser aplicado ao registro que está sendo enviado. Somente poderá enviar(gerar xml) se satisfazer a condição do PCPA109.
Observação

  •  Se não existir filtro na SOE , OE_FILTRO, enviará todos os registros.

 

  

Opcional

 

Protótipo de Tela

 

<Regra de negócio é o que define a forma de fazer o negócio, o processo definido e/ou as regras que devem ser contempladas. Devem ser descritas restrições, validações, condições e exceções do processo. Caso necessário, incluir neste capítulo também regras de integridade que devem ser observadas no momento do desenvolvimento>.

 

<Na tabela abaixo informe quais são as rotinas envolvidas, o tipo de operação, a opção de menu e se necessário uma breve descrição das regras de negócio relacionadas a rotina>.

 

<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.

 

Protótipo 01

 

 

 Image Added

 

 

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

 

 

 

Opcional

Fluxo do Processo

-

 

Exemplo de Aplicação:

  • Criar o campo “% Mínimo Espécie” (AAA_PERESP) onde o usuário informará o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação.
  • Criar o campo “Referência Mínima para Cálculo” (AAA_REFCAL) onde o usuário informará um dos 4 valores disponíveis para pagamento das mensalidades  como a referência mínima para calcular o débito total do aluno.
  • Criar o parâmetro MV_ACPARNE que definirá se as informações de “% Mínimo Espécie” e “Referência Mínima para Cálculo” serão obrigatórias.
  • O parâmetro MV_ACPARNE deve ter as seguintes opções: 1=Obrigatório e 2=Opcional. Deve ser inicializado como opcional>.

 

Tabelas Utilizadas

  • SE2 – Cadastro de Contas a Pagar
  • FI9 – Controle de Emissão de DARF>.

Opcional

Protótipo de Tela

 

<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.

 

Protótipo 01

 

 

 Image Removed

 

 

 

 

 

 

Opcional

Fluxo do Processo

 

<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>. 

Opcional

Dicionário de Dados

 

Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/

  

Índice

Chave

01

<FI9_FILIAL+FI9_IDDARF+FI9_STATUS>

02

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF>

03

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO>

Campo

<AAA_PERESP>

Tipo

<N>

Tamanho

<6>

Valor Inicial

<Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. 

Mandatório

Sim (  ) Não (  )

Descrição

<Referência Mínima para Cálculo>

Título

<Ref.Calc.>

Picture

<@E999.99>

Help de Campo

<Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação>

 

(Opcional)

Grupo de Perguntas

 

<Informações utilizadas na linha Protheus>.

 

Nome: FINSRF2

X1_ORDEM

01

X1_PERGUNT

Emissão De

X1_TIPO

D

X1_TAMANHO

8

X1_GSC

G

X1_VAR01

MV_PAR01

X1_DEF01

Comum

X1_CNT01

'01/01/08'

X1_HELP

Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório 

 

(Opcional)

Consulta Padrão

<Informações utilizadas na linha Protheus>

 

Consulta: AMB

Descrição

Configurações de Planejamento

Tipo

Consulta Padrão

Tabela

“AMB”

Índice

“Código”

Campo

“Código”; ”Descrição”

Retorno

AMB->AMB_CODIGO

 

<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>. 

Opcional

Dicionário de Dados

 

(Opcional)

Grupo de Perguntas

 

<Informações utilizadas na linha Protheus>.

 

 

(Opcional)

Consulta Padrão

<Informações utilizadas na linha Protheus>

 

 

 

(Opcional)

Estrutura de Menu

 

<Informações utilizadas na linha Datasul>.

(Opcional)

Estrutura de Menu

 

<Informações utilizadas na linha Datasul>.

 

Procedimentos

 

Procedimento

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Módulo

 

 

 

Programa base

 

 

 

Nome Menu

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Registro padrão

Sim

Sim

Sim

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Release de Liberação

 

 

 

 

 

 

Programas

 

Programa

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Nome Externo

 

 

 

Nome Menu/Programa

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Nome Verbalizado[1]

(Max 254 posições)

(Max 254 posições)

(Max 254 posições)

Procedimento

 

 

 

Template

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

Tipo[2]

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Categoria[3]

 

 

 

Executa via RPC

Sim/Não

Sim/Não

Sim/Não

Registro padrão

Sim

Sim

Sim

Outro Produto

Não

Não

Não

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Query on-line

Sim/Não

Sim/Não

Sim/Não

Log Exec.

Sim/Não

Sim/Não

Sim/Não

Rotina (EMS)

 

 

 

Sub-Rotina (EMS)

 

 

 

Localização dentro da Sub Rotina (EMS)

 

 

 

Compact[4]

Sim/Não

Sim/Não

Sim/Não

Home[5]

Sim/Não

Sim/Não

Sim/Não

Posição do Portlet[6]

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

Informar os papeis com os quais o programa deve ser vinculado

 

 

 

 

Cadastro de Papéis

<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.

<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.

 

Código Papel

(máx 3 posições)

Descrição em Português*

 

Descrição em Inglês*

 


[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.