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.
Totvs custom tabs box |
---|
tabs | Saiba Como Funciona |
---|
ids | passo1 |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | passo1 |
---|
| 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:
PCSUGESTAOCOMPRASC – 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
|
PCSUGESTAOCOMPRASI – 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:\lib
Para 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;
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | passo2 |
---|
| |
|
HTML |
---|
<style>
div.theme-default .ia-splitter #main {
margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
display: none;
}
#main {
padding-left: 10px;
padding-right: 10px;
overflow-x: hidden;
}
.aui-header-primary .aui-nav, .aui-page-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
</style>
|