Árvore de páginas

Versões comparadas

Chave

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

Movimento de Dados - Mod 2

OPERANDO 1

OPERADOR

OPERANDO 2

RESULTADO

C

STRTOVAL

N

N

Converte o dado informado em operador 1 de tipo caráter para numérico. O dado de tipo caráter ou string pode ser um mnemônico de tipo arquivo, reservado ou uma constante. Para identificar os decimais deve ser utilizada a vírgula (12,5). Se existe um caráter ponto (.) como separador dos decimais, este não será considerado.

...

  No operador 2 deve ser indicado o número de decimais para retornar. Se não é informado nenhum número neste campo, regressará um número inteiro.

Operando 1

Operador

Operando 2

Resultado

Avaliação

“12”

STRTOVAL

 

NAUX_30

12

“12.45”

STRTOVAL

 

NAUX_31

12

“12.45”

STRTOVAL

1

NAUX_32

12,4

“12.45”

STRTOVAL

2

NAUX_33

12.45

“12.45”

STRTOVAL

3

NAUX_34

12.45

N

VALTOSTR

N

C

Converte o dado informado no operando 1 de tipo numérico (tipo arquivo, reservado ou constante) em um caráter ou string. Será usado o ponto (.) como separador dos decimais. No operando 2 deve ser indicado o tamanho do caráter a retornar, considerando o ponto decimal dentro da conta de caracteres.

...

  Por exemplo 12.45 tem o tamanho de 5. Se não se informa, o tamanho indicado é menor, então retorna o valor exato convertido em string. Se o tamanho é maior, será preenchido com zeros à esquerda.

Operando 1

Operador

Operando 2

Resultado

Avaliação

12

VALTOSTR

 

CAUX_01

“12”

12

VALTOSTR

4

CAUX_02

“0012”

12.45

VALTOSTR

 

CAUX_03

“12.45”

12.45

VALTOSTR

6

CAUX_04

“012.45”

F

GET_MONEDA

Número Moeda

N

Retorna o valor da taxa de paridade em determinada data e na moeda solicitada. Em Financeiro, as moedas são identificadas com números e são definidas para cada cliente. Por exemplo 1 para a moeda local, 2 para dólares.

Exemplo 1: Supondo que o dia 21 de março de 2012 tenha a paridade de 39.12 para os Pesos da República Dominicana x Dólares, e esta seja a moeda 3. E o salário do funcionário seja 1000 USD. Obter o salário em Pesos.

Operando 1

Operador

Operando 2

Resultado

Avaliação

21/03/2012

GET_MONEDA

3

NAUX_01

39.12

EMPSALARIO

MULTIPLICA

NAUX_01

SALPESOS

39,120.00

Exemplo 2:

Supondo que foi outorgado um bônus de 500 USD para o funcionário, e estes são calculados com a data do período, obter o bônus em Pesos.

Operando 1

Operador

Operando 2

Resultado

Avaliação

PERFECFIN

GET_MONEDA

3

NAUX_01

39.12

INCIMPINC

MULTIPLICA

NAUX_01

IMPORTE

19,560.0

 

ANO

F

N

Retorna o ano de uma determinada data.

Operando 1

Operador

Operando 2

Resultado

Avaliação

 

ANO

25/05/2007

NAUX_01

2007

 

MÊS

F

N

Retorna o mês de uma determinada data.

Operando 1

Operador

Operando 2

Resultado

Avaliação

 

MES

25/05/2007

NAUX_01

5

 

DIA

F

N

Retorna o dia de uma determinada data:

Operando 1

Operador

Operando 2

Resultado

Avaliação

 

DIA

25/05/2007

NAUX_01

25

 

DIA_SEMANA

F

N

Retorna o dia da semana de uma determinada data considerando de 1= domingo até 7 = sábado

Operando 1

Operador

Operando 2

Resultado

Avaliação

 

DIA_SEMANA

25/05/2007

NAUX_01

6

 

MUEVE

N, F, C, L

N, F, C, L

O operador MUEVE atribui o conteúdo do dado ao mnemônico que está em resultado.

 

CONVIERTE_FECHA

Dado {AAAAMMDD}

F

Usa-se quando se deseja elaborar datas. Por exemplo, para ter uma data de aniversário, deve ser obtido o mnemônico ano da data de início do período e o mês e dia da data de admissão. Para obter a data com o formato aaaammdd, o ano deve ser multiplicado por 10000 + mês * 100 + dia. Ao ser aplicado o CONVIERTE_FECHA será obtido um mnemônico do tipo data, que pode ser salvada, comparada, adicionada ou subtraída como data.

Exemplo: Pagar 12 dias de prêmio de férias para todos os funcionários, se a data de aniversário está entre a data inicial e final do período. Se o período é do dia 01/01/2009 até 15/01/2009 e a data de admissão é no dia 05/jan/2004.

Operando 1

Operador

Operando 2

Resultado

Avaliação

 

ANO

FECFINPER

NAUX_01

2009

 

MES

FECHAING

NAUX_02

1

NAUX_01

MULTIPLICA

10000

NAUX_01

20090000

NAUX_02

MULTIPLICA

100

NAUX_02

100

NAUX_01

SUMA

NAUX_02

NAUX_03

20090100

 

DIA

FECHING

NAUX_04

5

NAUX_03

SUMA

NAUX_04

NAUX_03

20090105

 

CONVIERTE_FECHA

NAUX_03

ANIVERSARIO

05/1/2009

ANIVERSARIO

SI_MENOR

FECHINIPER

FINAL

 

ANIVERSARIO

SI_MAYOR

FECHFINPER

FINAL

 

12

MULTIPLICA

FACTPRIMVA

UNIDADES

 

UNIDADES

MULTIPLICA

SALDIA

IMPORTE

 

 

MUEVE

IMPORTE

PRIMAVAC

 

FINAL

ETIQUETA

 

 

 

Dia inicial

SUMA_DIAS

Dia final

N

Existem 3 formas para copiar incidências: Incidências por Funcionário, por Verba e por Tempo Extra. Geralmente, a última forma é utilizada para o tempo extra, por isso, foi denominada dessa forma, e permite copiar as incidências dia-a-dia, considerando 1 registro para cada semana.

Os dados são copiados do dia 1º até o dia 7, correspondentes aos dias da semana, sendo o dia 1 o primeiro dia da semana para a empresa. Independentemente da copia para cada dia no campo de horas será acumulado o total copiado nos 7 dias.

Com este operador é possível ler as incidências de cada dia ou de um rango de dias. Além de ser utilizado para não ter que efetuar o cálculo de cada dia, repetindo o mesmo 7 vezes. Assim, será possível utilizar um ciclo em conjunto com o operador SI_MENOR.

Por exemplo: Determinar as horas extras com valor duplicado ou triplicado, integradas ao salário, gravadas e isentas, considerando até 3 horas por dia para as integradas e até 3 dias na semana. Até 9 horas com valor duplicado e o restante com valor triplicado. 50% isento até 5 SMG pela semana e o restante gravado. Para isso, será capturada cada semana em um registro de incidências por dia.

Operando 1

Operador

Operando 2

Resultado

UNIINC

SI_IGUAL

0

FINAL

# DETERMINAR LAS HORAS INTEGRABLES

Y NOINTEGRABLES

# NAUX_01 = CONTADOR DE DÍAS DE LA SEMANA

 

MUEVE

0

NAUX_01

# NAUX_02 =

...

  CONTADOR DE VECES X SEMANA

 

MUEVE

0

NAUX_02

CICLO

ETIQUETA

 

 

NAUX_01

SUMA

1

NAUX_01

# NAUX_03 = HORAS NO

...

INTEGRABLES 

 

MUEVE

0

NAUX_03

# NAUX_04 = HORAS

...

INTEGRA  

BLES

 

 

MUEVE

0

NAUX_04

# OBTIENE LAS HORAS EXTRAS DE CADA UNO DE LOS DÍAS

NAUX_01

SUMA_DIAS

NAUX_01

NAUX_05

NAUX_05

SI_IGUAL

0

CONTINUA_1

NAUX_02

SUMA

1

NAUX_02

# DETERMINA SI YA TIENE MAS DE 3 DÍAS EN LA SEMANA

NAUX_02

SI_MAYOR

3

CONTINUA_1

# DETERMINA SI SON MAS DE 3 HORAS POR DÍA

 

MUEVE

NAUX_05

NAUX_03

NAUX_03

SI_MENOR

3

CONTINUA_1

 

MUEVE

3

NAUX_03

CONTINUA_1

ETIQUETA

 

 

NAUX_05

RESTA

NAUX_03

NAUX_04

NAUX_03

SUMA

NAUX_19

NAUX_19

NAUX_04

SUMA

NAUX_20

NAUX_20

NAUX_01

SI_MENOR

7

CICLO

NAUX_19

SUMA

HRS_NOINTE

HRS_NOINTE

NAUX_20

SUMA

HRS_INTE

HRS_INTE

# DETERMINA LAS HORAS DOBLES Y TRIPLES

 

MUEVE

UNIINC

NAUX_17

NAUX_17

SI_MENOR

9

CONTINUA_3

 

MUEVE

9

NAUX_17

UNIINC

RESTA

NAUX_17

NAUX_18

CONTINUA_3

ETIQUETA

 

 

HRS_DOBLES

SUMA

NAUX_17

HRS_DOBLES

HRS_TRIPLE

SUMA

NAUX_18

HRS_TRIPLE

# DETERMINA EL IMPORTE HRS DOBLESYTRIP

SALDIA

DIVIDE

8

NAUX_06

NAUX_17

MULTIPLICA

NAUX_06

NAUX_07

NAUX_07

MULTIPLICA

2

NAUX_07

NAUX_07

SUMA

IMP_HRSDOB

IMP_HRSDOB

NAUX_18

MULTIPLICA

NAUX_06

NAUX_08

NAUX_08

MULTIPLICA

3

NAUX_08

NAUX_08

SUMA

IMP_HRSTRI

IMP_HRSTRI

# DETERMINA EL IMPORTE GRAVADO Y EXENTO

NAUX_07

MULTIPLICA

0.5

NAUX_09

NAUX_09

SI_MENOR

TOPE_TEXT

CONTINUA_4

 

MUEVE

TOPE_TEXT

NAUX_09

CONTINUA_4

ETIQUETA

 

 

NAUX_07

RESTA

NAUX_09

NAUX_10

TEXTGRAVA

SUMA

NAUX_10

TEXTGRAVA

NAUX_08

SUMA

TEXTGRAVA

TEXTGRAVA

TEXTEXENTO

SUMA

NAUX_09

TEXTEXENTO

# DETERMINA EL IMPORTE INTEGRA

...

BLE  

 

MUEVE

NAUX_20

NAUX_11

UNIINC

SI_MENOR

9

CONTINUA_5

9

RESTA

NAUX_19

NAUX_11

NAUX_20

RESTA

NAUX_11

NAUX_12

CONTINUA_5

ETIQUETA

 

 

NAUX_11

MULTIPLICA

NAUX_06

NAUX_13

NAUX_13

MULTIPLICA

2

NAUX_13

NAUX_12

MULTIPLICA

NAUX_06

NAUX_14

NAUX_14

MULTIPLICA

3

NAUX_14

NAUX_13

SUMA

NAUX_14

NAUX_15

NAUX_15

SUMA

IMP_INTEG

IMP_INTEG

NAUX_19

MULTIPLICA

NAUX_06

NAUX_16

NAUX_16

MULTIPLICA

2

NAUX_16

NAUX_16

SUMA

IMP_NOINTE

IMP_NOINTE

FINAL

ETIQUETA

 

 

<Valor a Filtrar>

 

<VACIO>

FILTRO_MOVLI

<Campo SRV>

<lista conceptos>

<VACIO>

 

O operador FILTRO_MOVLI tem a funcionalidade de efetuar um pré-filtro, usando como referência os campos do catálogo de verbas, e irá funcionar em conjunto com o operador SUMA_MOVLI, onde será filtrada por verbas (RC_PD) a tabela de Movimentos de Folha de Pagamento (SRC).

O uso do operador FILTRO_MOVLI com SUMA_MOVLI só irá funcionar, se existem valores de verbas calculados previamente em Movimentos de Folha de Pagamento (SRC). Além disso, podem ser adicionados vários FILTRO_MOVLI, que serão associados com um AND.

Se o SUMA_MOVLI não tem dados na

...

1ª  ou 2ª expressão, significa que deve ser considerado o filtro indicado no FILTRO_MOVLI.

Exemplo 01: com um só filtro em FILTRO_MOVLI

Operando 1

Operador

Operando 2

Resultado

“1”

FILTRO_MOVLI

CONISR

 

 

SUMA_MOVLI

 

NAUX_01

Exemplo 02: com um só filtro no SUMA_MOVLI

Operando 1

Operador

Operando 2

Resultado

“1”

SUMA_MOVLI

CONISR

NAUX_01

Exemplo 03: com um só filtro na SUMA_MOVLI e tomando o valor “1” ou “S” por default

Operando 1

Operador

Operando 2

Resultado

 

SUMA_MOVLI

CONISR

NAUX_01

Exemplo 04: com um só filtro em FILTRO_MOVLI e pesquisando vários valores

Operando 1

Operador

Operando 2

Resultado

“1,3”

FILTRO_MOVLI

CONISR

...

           

 

SUMA_MOVLI

 

NAUX_01

Exemplo 05: pesquisar valores diferentes do mesmo campo.

Operando 1

Operador

Operando 2

Resultado

“3”

FILTRO_MOVLI

RV_TIPOCOD

 

 

SUMA_MOVLI

 

NAUX_01

“1”

FILTRO_MOVLI

RV_TIPOCOD

 

 

SUMA_MOVLI

 

NAUX_02

 

Conteúdo

SUMA_MOVLI

Mnemônico de SRV ou

BASE_PENSIÓN ou

Lista de Verbas

N

Mediante a fórmula é possível o cálculo (adição/substração) dos valores das verbas calculadas nos Movimentos Mensais (SRC), conforme a lista de verbas selecionada. Também é possível o cálculo para beneficiários, conforme a definição do operador BASE_PENSION.

Por default, serão obtidos os valores (RC_VALOR) da lista de verbas indicada, no entanto, se é necessário obter o total de H=Horas ou D=Dias, deve ser indicado o mnemônico reservado TP_SUMA_MOVLI.

O posicionamento para a tabela de beneficiários deve ser realizado em conjunto com o operador SUMA_MOVLI e o Mnemônico reservado BASE_PENSION, identificado na segunda expressão da fórmula utilizada.

...

  • Para que seja possível utilizar este operador em conjunto com o BASE_PENSIÖN, é necessário que em Verbas por Processo (SRM), o campo Leer Bene = Si (RM_LEEBEN).

...

  • Na rotina de Beneficiários, se um funcionário tem várias pensões alimentícias, deve ser copiada uma verba diferente para cada um dos registros.

...

  • Durante o cálculo, será obtida a base da pensão, dependendo da verba que esteja sendo calculada e da lista de verbas indicadas no campo de Verbas Base para a Pensão.

Operando 1

Operador

Operando 2

Resultado

“Conteúdo”

SUMA_MOVLI

BASE_PENSION

NAUX_01

Também é possível utilizar o operador SUMA_MOVLI com um Mnemônico que identifique um campo de incidências da tabela SRV, por exemplo RV_PENSAO. Assim, são calculadas todas as verbas com o valor deste campo igual a “Sim”, para incidir:

Operando 1

Operador

Operando 2

Resultado

 

SUMA_MOVLI

Mnemônico

NAUX_01

Outra possibilidade é utilizar diretamente os valores na expressão da fórmula, que devem ser os códigos das verbas registradas na tabela SRV, no campo Código (RV_COD).

Exemplo:

Operando 1

Operador

Operando 2

Resultado

SUMA_MOVLI

“001,002,003”

NAUX_01

Soma os valores das verbas calculadas até o momento, conforme a lista de verbas selecionadas. Respeita o tipo de verba, ou seja, se é Percepção ou Base Percepção será feita a somatória e se for Dedução ou Base Dedução será feita a substração.

Exemplo 1: Supondo que o mnemônico CONISR está vinculado à tabela SRV=Verbas e o campo RV_IR=ISR

...

“2”      SUMA_MOVLI    CONISR NAUX_01

Exemplo 2: Supondo que o mnemônico CONSDO está vinculado à tabela SRV=Verbas e o campo RV_INCORP

E é necessário obter os dias incorporados ao salário, para determinar os dias a pagar.

 

MOVE

“D”

TP_SUMA_MOVLI

“1”

SUMA_MOVLI

CONSDO

NAUX_01

 

ie_total_con

<criterio>

N

 

IE_TOTAL_EMP

<criterio>

N

Estes operadores são utilizados em conjunto com uma tabela alfanumérica denominada Critério, que contém uma chave e uma descrição. A cada funcionário é vinculado um critério.

IE_TOTAL_CON obtém a soma dos valores do mês que está sendo processado (RCH_MES, RCH_ANO) referente à verba que está sendo calculada. Essa soma corresponde a todos os funcionários que atendem o critério indicado.

IE_TOTAL_EMP obtém o Total de funcionários que, durante o mês que está sendo processado (RCH_MES, RCH_ANO), tiveram um valor na verba que está sendo calculada, e que preenchem o critério indicado.

Exemplo: Somar a base de imposto estatal do mês, de todos os funcionários com critério 004. A essa base serão subtraídos 8 salários mínimos mensais, considerando o fator 30.5. Esse resultado deve ser dividido pela base original para obter um fator. O Imposto estatal será obtido somando a base de imposto estatal do mês do funcionário e multiplicando pelo fator (Procedimento para o cálculo do Imposto estatal .

# OBTIENE ACUM

DO MÊS

DO TRABALHADOR

 

PERMESPER

VALOR_EMPRESA

PERMESPER

NAUX_01

# OBTIENE

SAL MIN

 

 

 

PESQUISA

TABELA_S006

 

ELEMENTO_01

ATÉ_IGUAL

EMPZONECO

 

 

MOVE

ELEMENTO_02

SALMIN

# OBTIENE ACUM

DO MÊ DE TODOS

OS TRABALHADORES

CON CRITERIO “0004”

EMPCRIACUM

SE_DIFERENTE

...

"004

...

"

CONT_04

 

IE_TOTAL_COM

...

"004

...

"

BASEISNQRO

CONT_04

ETIQUETA

 

 

SALMIN

MULTIPLICA

8

NAUX_03

NAUX_03

MULTIPLICA

30.5

NAUX_03

BASEISNQRO

SUBITRAI

NAUX_03

NAUX_04

NAUX_04

DIVIDE

BASEISNQRO

FACISNQRO

NAUX_01

MULTIPLICA

FACISNQRO

BASEIMPEST

CONT_04

ETIQUETA