Quando estamos preenchendo campos código (exemplo: E1_NUM) podemos utilizar um gatilho que complete os zeros a esquerda, facilitando o preenchimento do campo.
Gatilho
Campo .: E1_NUM
Seq.: 001
Cnt Dominio.: E1_NUM
Regra.: STRZERO(VAL(M->E1_NUM),9)
Onde: A função Strzero irá completar com zeros a esquerda o conteúdo do campo indicado, no caso o 9 significa o tamanho do campo
Att
Rafael Lopes
segunda-feira, 27 de agosto de 2012
Bloqueio de Movimentação
Existem alguns parâmetros que podem auxiliar no bloquei das movimentações em alguns módulos segue abaixo, alguns exemplos que podem ser bem uteis
Modulo Financeiro
MV_DATAFIN
Data limite p/ realização de operações financeiras
Modulo Estoque
MV_ULMES
Data ultimo fechamento do estoque.
MV_DBLQMOV
Data para o bloqueio dos movimentos no estoque. Não permitindo a alteração, inclusão ou exclusão de movimentos com data menor ou igual à data informada no parâmetro.
Gestão de Pessoal
MV_FOLMES
Ano e Mês de competência para calculo da folha
Módulo Fiscal
MV_DATAFIS
Data limite para realização de operações fiscais.
Módulo Contabilidade
MV_DATADE
Data início de competência para digitação dos lançamentos válidos para a contabilidade.
MV_DATAATE
Data fim de competência para digitação dos lançamentos válidos para a contabilidade.
Att
Rafael Lopes
MV_DATAFIN
Data limite p/ realização de operações financeiras
Modulo Estoque
MV_ULMES
Data ultimo fechamento do estoque.
MV_DBLQMOV
Data para o bloqueio dos movimentos no estoque. Não permitindo a alteração, inclusão ou exclusão de movimentos com data menor ou igual à data informada no parâmetro.
Gestão de Pessoal
MV_FOLMES
Ano e Mês de competência para calculo da folha
Módulo Fiscal
MV_DATAFIS
Data limite para realização de operações fiscais.
Módulo Contabilidade
MV_DATADE
Data início de competência para digitação dos lançamentos válidos para a contabilidade.
MV_DATAATE
Data fim de competência para digitação dos lançamentos válidos para a contabilidade.
Att
Rafael Lopes
sábado, 11 de agosto de 2012
Campos de valor para alteração de casas decimais
Lista dos principais campos que devem ser alterados quando
se torna necessário aumentar o número de casas decimais nos documentos de
entrada ou saída. Tratando até os campos que tratam o custo no sistema.
Tamanho: 18
Decimal: 6
Picture: @E 999,999,999.999999
SB1 - Descrição genérica do produto
-B1_PRV1
-B1_CUSTD
-B1_UPRC
SB2 - Saldo físico e financeiro
-B2_VFIM1
-B2_VFIM2
-B2_VFIM3
-B2_VFIM4
-B2_VFIM5
-B2_VATU1
-B2_VATU2
-B2_VATU3
-B2_VATU4
-B2_VATU5
-B2_CM1
-B2_CM2
-B2_CM3
-B2_CM4
-B2_CM5
-B2_CMFF1
-B2_CMFF2
-B2_CMFF3
-B2_CMFF4
-B2_CMFF5
SB9 -Saldos Iniciais
-B9_VINI1
-B9_VINI2
-B9_VINI3
-B9_VINI4
-B9_VINI5
-B9_VINIFF1
-B9_VINIFF2
-B9_VINIFF3
-B9_VINIFF4
-B9_VINIFF5
-B9_CUSTD
SB6 - Saldos em poder de terceiros
-B6_PRUNIT
-B6_CUSTO1
-B6_CUSTO2
-B6_CUSTO3
-B6_CUSTO4
-B6_CUSTO5
-B6_CUSFF1
-B6_CUSFF2
-B6_CUSFF3
-B6_CUSFF4
-B6_CUSFF5
SC2 - Ordem de produção
-C2_VATU1
-C2_VATU2
-C2_VATU3
-C2_VATU4
-C2_VATU5
-C2_VINI1
-C2_VINI2
-C2_VINI3
-C2_VINI4
-C2_VINI5
-C2_VFIM1
-C2_VFIM2
-C2_VFIM3
-C2_VFIM4
-C2_VFIM5
-C2_APRATU1
-C2_APRATU2
-C2_APRATU3
-C2_APRATU4
-C2_APRATU5
-C2_APRINI1
-C2_APRINI2
-C2_APRINI3
-C2_APRINI4
-C2_APRINI5
-C2_APRFIM1
-C2_APRFIM2
-C2_APRFIM3
-C2_APRFIM4
-C2_APRFIM5
-C2_VINIFF1
-C2_VINIFF2
-C2_VINIFF3
-C2_VINIFF4
-C2_VINIFF5
-C2_VFIMFF1
-C2_VFIMFF2
-C2_VFIMFF3
-C2_VFIMFF4
-C2_VFIMFF5
-C2_APINFF1
-C2_APINFF2
-C2_APINFF3
-C2_APINFF4
-C2_APINFF5
-C2_APFIFF1
-C2_APFIFF2
-C2_APFIFF3
-C2_APFIFF4
-C2_APFIFF5
SC3 - Contrato de parceria
-C3_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
-C3_PRECO
SC8 -Cotações
-C8_PRECO
-C8_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
-C8_VLDESC
(Não alterar campos de desconto)
SC6 - Itens do pedido de venda
-C6_PRCVEN
-C6_VALOR (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
-C6_PRUNIT
SC7 – Pedidos de compra
-C7_PRECO
-C7_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
-C7_VLDESC (Não
alterar campos de desconto)
SC9 -Pedidos liberados
-C9_PRCVEN
SCR – Documento com Alçada
-CR_TOTAL
-CR_VALLIB
SD1 - Itens da NF de entrada
-D1_VUNIT
-D1_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
-D1_CUSTO
-D1_CUSTO2
-D1_CUSTO3
-D1_CUSTO4
-D1_CUSTO5
-D1_VALDEV
-D1_CUSFF1
-D1_CUSFF2
-D1_CUSFF3
-D1_CUSFF4
-D1_CUSFF5
SD2 - Itens de venda da NF
-D2_PRCVEN
-D2_CUSTO1
-D2_CUSTO2
-D2_CUSTO3
-D2_CUSTO4
-D2_CUSTO5
-D2_CUSFF1
-D2_CUSFF2
-D2_CUSFF3
-D2_CUSFF4
-D2_CUSFF5
-D2_VARPRUN
-D2_PRUNIT
-D2_VALDEV
-D2_DESCON (Não
alterar campos de desconto)
-D2_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza duas casas decimais,
se este alterado o sistema diverge centavos ao total da NF).
SD3 -Movimentações internas
-D3_CUSTO1
-D3_CUSTO2
-D3_CUSTO3
-D3_CUSTO4
-D3_CUSTO5
-D3_CUSFF1
-D3_CUSFF2
-D3_CUSFF3
-D3_CUSFF4
-D3_CUSFF5
SD8 - MOVIMENTAÇÕES LOTE CUSTO FIFO
-D8_CUSTO1
-D8_CUSTO2
-D8_CUSTO3
-D8_CUSTO4
-D8_CUSTO5
ADB – Itens do contrato de parceria
-ADB_PRCVEN
-ADB_PRUNIT
-ADB_VALDES
(Não alterar campos de desconto)
-ADB_TOTAL (Não
alterar este campo, uma vez que a impressão da NF utiliza
-duas casas
decimais, se este alterado o sistema diverge centavos ao total da NF).
SCK – Itens de orçamento
-CK_PRCVEN -
-CK_VALOR (Não
alterar este campo, uma vez que a impressão da NF utiliza
-duas casas
decimais, se este alterado o sistema diverge centavos ao total da NF).
-CK_VALDESC
(Não alterar campos de desconto)
-CK_PRUNIT
SD6 – Itens do contrato
-D6_VRUNIT
DA1 – Itens da tabela de preços (Não alterar)
-DA1_PRCBAS
-DA1_PRCVEN
-DA1_VLRDES
terça-feira, 7 de agosto de 2012
Tratativa do ISS no item do pedido
Para tratar a alíquota do ISS no item do pedido de
venda (arquivo SC6) e evitar a criação de vários produtos para tratar diferentes alíquotas é necessário seguir os seguinte procedimentos:
Criar um campo nos itens do Pedido de Venda, por exemplo,
C6_ALIQISS, não existe uma obrigatoriedade para o nome do campo, foi cadastrado
assim para manter o padrão do cadastro de produtos.
A rotina interna do Protheus vai verificar o conteúdo do campo Valid (SX3) ou VALID USER (validação do usuário), devendo ser obrigatoriamente preenchido com MaFisGet("IT_ALIQISS").
Campo:
C6_ALIQISS
Tipo: Numérico
Tamanho: 5,2
Picture: @E 99.99
C6_ALIQISS
Tipo: Numérico
Tamanho: 5,2
Picture: @E 99.99
Valid User (validação do usuário): MaFisGet("IT_ALIQISS")
Com o campo, será
necessário informar a alíquota de cada item no pedido de venda e a mesma
será considerada na geração do documento de saída.
segunda-feira, 6 de agosto de 2012
Calculo do ISS (Compras/ Faturamento)
ISS (Compras/ Faturamento)
CLIENTE
Campo Rec. ISS esteja como Sim No campo ISS no preço A1_INCISS, se o ISS estiver embutido no preço informar “S”, se deseja incluir o ISS no total da NF informar “N”
FORNECEDOR
Campo Rec. ISS esteja como Não Amarrar uma natureza ao cadastro de Fornecedor que o campo Calcula ISS esteja como Sim
PRODUTOS
No campo % de ISS, se o conteúdo for igual a 0, será valido o conteúdo do parâmetro MV_ALIQISS. Informar o campo B1_CODISS
NATUREZA
O campo calcula ISS ED_CALDISS tem que estar igual a “S"
TES
Calcula ISS = S
Livro Fiscal de ISS = T
MV_DESCISS = .T.
Informa ao sistema se o ISS devera ser descontado do valor do titulo financeiro caso o cliente for responsável pelo recolhimento.
MV_MRETISS = 1
Modo de retenção do ISS nas aquisições de serviços - 1 = na emissão do titulo principal / 2 = na baixa do titulo principal.
MV_VRETISS = 0.00
Valor mínimo para dispensa de retenção de ISS.
MV_MODRISS = "1"
Indica qual o modo de retenção do ISS ( "1" - por titulo; "2" - mensal vencimento; "3" - por base).
MV_TPABISS = 1
Se parâmetro igual a 1 indica se será efetuado um desconto na duplicata quando o cliente recolhe ISS se igual a 2 será gerado um titulo de abatimento.
MV_TPNFISS = E
Caso esse parâmetro esteja sem conteúdo, OBRIGATORIAMENTE o COD.DE SERVIÇO DE ISS deverá estar preenchido no cadastro de produto para o correto calculo do ISS.
MV_VENCISS = E
Define o tipo de vencimento de ISS. As opções válidas são: E=Emissão; Q=Quinzenal/Emissão; V=Vencimento.
MV_DIAISS = Dia padrão para gerar os títulos de ISS.
MV_DEDISS = 2
Define o momento do tratamento da dedução do ISS (Na baixa ou emissão do titulo). 1= Na baixa 2= Na emissão
MV_DEISSBS = (Lógico) Indica se o valor do ISS deve ou não ser retirado da base de calculo do Pis/Cofins/CSLL
Web Services e Portal Protheus
Roteiro de Configuração de Web Services e Portal Protheus
O roteiro de configuração é um pouco antigo, mas, até hoje a configuração é feita da mesma maneira, rs
O roteiro de configuração é um pouco antigo, mas, até hoje a configuração é feita da mesma maneira, rs
Att
Rafael Lopes
segunda-feira, 23 de julho de 2012
Logo no Relatorio P10 e P11
Protheus 10
Substitua o arquivo lgrl01 (lgrl02, lgrl03 ... lgrl99, depende do numero da empresa cadastrada)
Obs.: limite de arquivo de 100 kb
Protheus 11
O processo é o mesmo do protheus 10 porem o nome do arquivo é lgtotvs.bmp
Substitua o arquivo lgrl01 (lgrl02, lgrl03 ... lgrl99, depende do numero da empresa cadastrada)
Obs.: limite de arquivo de 100 kb
Protheus 11
O processo é o mesmo do protheus 10 porem o nome do arquivo é lgtotvs.bmp
Balanceamento de Carga Protheus
Para criar um balanceamento de carga no Protheus é simples, no exemplo abaixo eu utilizei 3 serviços, sendo 1 master que irá distribuir as conexões e 2 serviços slaves, que irão receber as conexões de usuário.
É possível tambem distribuir os serviços por servidores diferentes. Nesse caso mantive no mesmo servidor por um problema de estouro de memoria do appserver, quando o serviço chegava a 1,5 Gb de memoria o serviço simplesmente caia ou começava a não aceitar mais conexões
Descobri que isso ocorre mais frequentemente em servidores 32 bits e por isso resolvi adotar o balanceamento de carga...
Criei a seguinte estrutura de pastas
bin\appserver
bin\appserver_slave1
bin\appserver_slave2
No arquivo appserver.ini da pasta bin\appserver adicione as seguintes tags
[ServerNetWork]
Servers=SLAVE1,SLAVE2 (identificação dos servidores)
MasterConnection=0 (numero de conexões que o servidor master irá receber)
[SLAVE1]
TYPE=TCPIP
Server=localhost (ip ou nome do servidor onde o serviço slave 1 está levantado)
Port=2020
Connections=5 (numero de conexões que o servidor slave irá receber)
[SLAVE2]
TYPE=TCPIP
Server=localhost (ip ou nome do servidor onde o serviço slave 1 está levantado)
Port=3030
Connections=5 (numero de conexões que o servidor slave irá receber)
Arquivo appserver.ini da pasta bin\appserver_slave1
(Dica: nos serviços slaves é interessante desabilitar a tag [http] ou se achar melhor mantenha somente as tags [Ambiente], [DBAccess], [Drivers], [TCP], [General], [SERVICE])
[TCP]
TYPE=TCPIP
Port=2020
[SERVICE]
NAME=TotvsProtheus11_slave1
DISPLAYNAME=Totvs Protheus 11 Slave1
Arquivo appserver.ini da pasta bin\appserver_slave2
[TCP]
TYPE=TCPIP
Port=3030
[SERVICE]
NAME=TotvsProtheus11_slave2
DISPLAYNAME=Totvs Protheus 11 Slave2
É possível tambem distribuir os serviços por servidores diferentes. Nesse caso mantive no mesmo servidor por um problema de estouro de memoria do appserver, quando o serviço chegava a 1,5 Gb de memoria o serviço simplesmente caia ou começava a não aceitar mais conexões
Descobri que isso ocorre mais frequentemente em servidores 32 bits e por isso resolvi adotar o balanceamento de carga...
Criei a seguinte estrutura de pastas
bin\appserver
bin\appserver_slave1
bin\appserver_slave2
No arquivo appserver.ini da pasta bin\appserver adicione as seguintes tags
[ServerNetWork]
Servers=SLAVE1,SLAVE2 (identificação dos servidores)
MasterConnection=0 (numero de conexões que o servidor master irá receber)
[SLAVE1]
TYPE=TCPIP
Server=localhost (ip ou nome do servidor onde o serviço slave 1 está levantado)
Port=2020
Connections=5 (numero de conexões que o servidor slave irá receber)
[SLAVE2]
TYPE=TCPIP
Server=localhost (ip ou nome do servidor onde o serviço slave 1 está levantado)
Port=3030
Connections=5 (numero de conexões que o servidor slave irá receber)
Arquivo appserver.ini da pasta bin\appserver_slave1
(Dica: nos serviços slaves é interessante desabilitar a tag [http] ou se achar melhor mantenha somente as tags [Ambiente], [DBAccess], [Drivers], [TCP], [General], [SERVICE])
[TCP]
TYPE=TCPIP
Port=2020
[SERVICE]
NAME=TotvsProtheus11_slave1
DISPLAYNAME=Totvs Protheus 11 Slave1
Arquivo appserver.ini da pasta bin\appserver_slave2
[TCP]
TYPE=TCPIP
Port=3030
[SERVICE]
NAME=TotvsProtheus11_slave2
DISPLAYNAME=Totvs Protheus 11 Slave2
Habilitando o Timeout
Para habilitar o Timeout do Protheus é necessário realizar o seguinte procedimento
Na pasta \totvs\protheus\bin\appserver edite o arquivo appserver.ini e na Tag [General] adicione a linha InactiveTimeOut como demonstrado abaixo.
O tempo de inatividade é representado em segundos e pode ser configurado de acordo com a necessidade de cada empresa.
Exemplo:
[General]
InstallPath=C:\Protheus11\Protheus
InactiveTimeOut=900
Na pasta \totvs\protheus\bin\appserver edite o arquivo appserver.ini e na Tag [General] adicione a linha InactiveTimeOut como demonstrado abaixo.
O tempo de inatividade é representado em segundos e pode ser configurado de acordo com a necessidade de cada empresa.
Exemplo:
[General]
InstallPath=C:\Protheus11\Protheus
InactiveTimeOut=900
Att
Rafael Lopes
terça-feira, 10 de julho de 2012
Tolerancia de Recebimento
Tolerancia de Recebimento
Essa opção permite cadastrar regras de tolerancia de recebimento de materiais
Com o objetivo de validar as entregas com preços e/ou quantidade por cima do pedido de compras. Nesse registro, é definida uma regra ou excessão identificada pelo fornecedor, produto ou grupo de materiais, para quantidade e valor superior ao informado no pedido de compras. Nas rotinas de recebimento de materiais e
Documentos de Entrada, o Sistema compara o preço e quantidade com as do pedido de compras. Se existir divergencia , será analizado se existe alguma regra de tolerancia para o produto, forncedor e/ou grupo de materiais. Se existir, o
Sistema verificará se a tolerancia esta sendo respeitada. Se exceder, a entrada será bloqueada, aguardando uma aprovação ou exclusão do documento dados no controle de alçada. A utilização da tolerancia de preço é opcional.
Para a utilização da rotina, debe-se configurar os seguintes parámetros?
- MV_NFAPROV
- MV_RESTCLAS
Os recebimentos de materiais e documentos de entrada que ultrapassam a telerância ficaram bloqueados até que um aprovador os libere, na rotina de Liberação de Documento.
sábado, 28 de abril de 2012
Tratando do ISS no item do pedido
Para informar a alíquota do ISS no item do pedido de
venda (arquivo SC6) será necessário criar um campo nome qualquer, por exemplo,
C6_ALIQISS, não existe uma obrigatoriedade para o nome do campo, foi cadastrado
assim para manter o mesmo padrão do cadastro de produtos.
A rotina interna do Protheus vai verificar o conteúdo do
Valid (SX3) ou no VALID USER (validação do usuário) informado, devendo ser,
obrigatoriamente, preenchido = MaFisGet("IT_ALIQISS").
Campo criado:
C6_ALIQISS
Tipo: Numérico
Tamanho: 5,2
Picture: @E 99.99
C6_ALIQISS
Tipo: Numérico
Tamanho: 5,2
Picture: @E 99.99
Valid User (validação do usuário): MaFisGet("IT_ALIQISS")
Com esta criação, será
necessário informar a alíquota de cada item no pedido de venda e a mesma
será considerada na geração do documento de saída.
Rastro do Desdobramento
http://tdn.totvs.com/kbm#37176
Quando efetuamos um desdobramento de um titulo no contas
a pagar ou a receber, o sistema não permite que o usuário exclua qualquer
titulo do intervalo, para isso existe uma opção de desabilitar o Rastro, para
que seja possível excluir qualquer parcela do desdobramento.
Segue
esclarecimento sobre o funcionamento do parâmetro MV_NRASDSD:
Conteúdo = .F. -
FALSE :
Quando faz o desdobramento, mantém o título original
baixado, não é possível excluir as parcelas e ao cancelar o desdobramento,
exclui todos os títulos, originador e gerados.
Conteúdo = .T. -
TRUE :
Quando faz o desdobramento, não mantém o título original
baixado, é possível excluir qualquer parcela, mas não é possível cancelar o
desdobramento.
Baixa de titulos com desconto de cobrança
1º Emissão da nota fiscal no
faturamento
2º Geração dos boletos e geração dos arquivos de cobrança Itaú em cobrança simples
3º Após o registro dessas duplicatas no banco, em alguns casos necessitamos efetuar o desconto das duplicatas, entramos em contato com o gerente do banco e solicitamos o processo de desconto de duplicatas.
4º No Protheus, voltamos os títulos que estavam em situação 1-cobrança simples para situação 0-Carteira e depois geramos um novo bordero passando os títulos para a situação 2-cobrança descontada, isso manualmente, fazemos isso pois através do bordero de cobrança descontada conseguimos creditar o valor correto no banco.
5º No retorno do arquivo CNAB de cobrança, consegui fazer a baixa dos títulos que estavam em cobrança descontada automaticamente, porém o banco envia diversas taxas e tarifas no arquivo, esses valores eu não gostaria que fossem lançados na movimentação bancária SE5, gostaria apenas que fosse efetuado a baixa do título, porém mesmo tirando os valores de despesas e juros do layout, o sistema continua debitando os valores.
x
2º Geração dos boletos e geração dos arquivos de cobrança Itaú em cobrança simples
3º Após o registro dessas duplicatas no banco, em alguns casos necessitamos efetuar o desconto das duplicatas, entramos em contato com o gerente do banco e solicitamos o processo de desconto de duplicatas.
4º No Protheus, voltamos os títulos que estavam em situação 1-cobrança simples para situação 0-Carteira e depois geramos um novo bordero passando os títulos para a situação 2-cobrança descontada, isso manualmente, fazemos isso pois através do bordero de cobrança descontada conseguimos creditar o valor correto no banco.
5º No retorno do arquivo CNAB de cobrança, consegui fazer a baixa dos títulos que estavam em cobrança descontada automaticamente, porém o banco envia diversas taxas e tarifas no arquivo, esses valores eu não gostaria que fossem lançados na movimentação bancária SE5, gostaria apenas que fosse efetuado a baixa do título, porém mesmo tirando os valores de despesas e juros do layout, o sistema continua debitando os valores.
Assinar:
Postagens (Atom)