01. DADOS GERAIS
Linha de Produto: | PC Sistemas |
---|---|
Segmento: | D&L |
Módulo: | 2 - Comprar Mercadorias |
Requisito/Story/Issue: | COM-3255 |
Versão/Release: | 29.02 |
02. SITUAÇÃO/REQUISITO
Gravar pedido de compra no sistema de forma automática através de integração.
03. SOLUÇÃO
Criado uma nova forma de realizar uma chamada a Rotina 220 - Digitar Pedido de Compra, via DLL para que possa solicitar o processamento de um pedido de compra a partir de informações gravadas na tabela de sugestão de compra. Quando for realizado essa chamada a rotina irá ler as informações gravadas na tabela de sugestão, a rotina não terá sua tela aberta para visão do usuário a rotina executará o comando em segundo plano gerando o pedido de compra.
- Acesse a Rotina 560 - Atualizar Banco de Dados, na versão 29.02 ou superior e atualize as tabelas abaixo:
- Tab. cab. da sug. a ser utiliz. geração do ped. compra (PCSUGESTAOCOMPRAC)
- Tab. itens sug. ser utiliz. para geração do ped. compr (PCSUGESTAOCOMPRAI)
Para que esse processo seja realizado o parceiro deve fazer uma chamada a DLL disponibilizada no pacote de Library disponível no CCW. Antes de realizar a chamada a DLL deve ser gravado as informações na tabela de sugestão de compras conforme layout abaixo:
PCSUGESTAOCOMPRAC – Cabeçalho da sugestão
Campo
Tipo e Tamanho
Obrigatório
Comentário
Numsugestao
Number (10)
Sim
Número da Sugestão. Usar sequence DFSEQ_sugestaocompra
Codfornec
Number (6)
Sim
Código do Fornecedor
Codfilial
Varchar2(2)
Sim
Código Filial
Codusuariosugestao
Number (6)
Código Usuário Sugestão
Datasugestao
Date
Sim
Data da Sugestão
Tipodescarga
Varchar2(1)
Sim
Tipo de Pedido – Passar os valores:
1, 5, A, S
Tipos
1 – Normal,
5 – Bonificado,
A – Consignado,
S – Imobilizado Consumo Interno
PCSUGESTAOCOMPRAI – Itens da sugestão
Campo
Tipo e Tamanho
Obrigatório
Comentário
Numsugestao
Number (10)
Sim
Número da Sugestão. Usar sequence DFSEQ_sugestaocompra
Codprod
Number(9)
Sim
Código do produto
Qtsugerida
Number(18,6)
Sim
Quantidade Sugerida
Pccompraligsugerido
Number(18,6)
Sim
Preço de compra liquido. Sem os impostos e desconto. Mesmo valor que é digitado na rotina 220 no campo Preço de compra
Status
Varchar2(1)
Sim
Gravar no campo Valor “P”
Status da sugestão
G – Gerado
S – Sugerido
C – Cancelado
P - Pendente
Caminho para baixar a Rotina no CCW:
- Acessar o CCW,
- Baixar a Biblioteca Library,
- Descompactar,
- Pegar a dll RotinaLaunch.DLL,
- Salvar na pasta P:\libPara a rotina 220 realizar a importação da sugestão de compra de forma automática deverá ser realizada a chamada na DDL (RotinaLaunch.dll), passando os seguintes parâmetros:
- Código da rotina (220)
- Nome do banco de dados
- Usuário do banco de dados
- Senha do banco de dados
- Usuário do WINTHOR
- Senha do WINTHOR
- Parâmetros Adicionais, onde deverão ser informados:
- 220S (fixo) – A letra S, significa Sugestão de compra.
- Número da sugestão a ser importada
- S ou N para importar produtos foram de linha
- S ou N para importar produtos proibidos para venda
- Todos os parâmetros deverão ser separados por ; (ponto e virgula) Ex: 220S;125;S;S.
Exemplo de uso da DLL:
// Declare a função de que representa a interface da DLL;
TDLL_RotinaLaunch = function (pRotina: Integer;
pAliasBD: AnsiString;
pUsuarioBD: AnsiString;
pSenhaBD: AnsiString;
pUsuarioWT: AnsiString;
pSenhaWT: AnsiString;
pParamAdicional: AnsiString;
var pMsg: WideString): Boolean;
// Implementação
procedure TestarDLL;
var
vHandle: THandle;
vFuncaoLoadRotina: TDLL_RotinaLaunch;
vRotinaCarregada: Boolean;
vMsg: WideString;
begin
vHandle := LoadLibrary(<caminho da DLL>);
try
if vHandle <> 0 then
begin
@vFuncaoLoadRotina := GetProcAddress(vHandle, 'LoadRotina');
// Executa a função e retorna se foi possível ou não carregar a rotina
vRotinaCarregada := vFuncaoLoadRotina(<Codigo da Rotina>
, <Alias do BD>
, <Usuario do BD>
, <Senha do BD>
, <Usuario do WT>
, <Senha do Usuário do WT>
, <Parametros adicionais, se necessário>
, vMsg // traz mensagem de retorno da DLL
);
end;
finally
FreeLibrary(vHandle);
end;
end;
04. DEMAIS INFORMAÇÕES
Atualize as rotinas abaixo para a versão 29.02 ou versão superior.
560 - Atualizar Banco de Dados
220 - Digitar Pedido de CompraVocê sabe como atualizar as rotinas do WinThor?