About this project
it-programming / web-development
Open
Descrição: Criar um programa que faz a leitura de informações do arquivo com extensão .txt que contém conteúdo referente horas extras, faltas e atrasos dos empregados retirado do banco de horas da empresa, conforme leiaute abaixo.
O programa deve somar as horas faltas e atrasos de cada empregado e depois descontar das horas extras, caso ele tenha, na ordem descrita no item 2 nos detalhes.
Depois gerar um novo arquivo com o leiaute de importação, com as novas informações e mantendo o que não foi alterado, dos eventos que não participam dessa correção.
IMPORTANTE: o exemplo do funcionamento consta com um empregado, mas o arquivo pode ter até 500 empregados.
Detalhes:
1) Somar horas Falta (evento 0040) e hora Atraso (evento 0223).
2) Descontar total de horas faltas e atrasos das horas extras, na ordem abaixo:
1ª - Hora extra 50% (evento 0150)
2ª - Hora extra 75% (evento 0205)
3ª - Hora extra 100% (evento 0200)
3) Substituir o 8ª digito por “0”
1000000700172017050400110000002800000000193
4) No programa fazer um campo para alterar o mês e ano localizado entre 13º e 18º caractere (formato: AAAAMM).
5) Gerar novos valores de horas no formato do leiaute de importação e mantendo as informações do que não foi alterado.
Leiaute de importação:
1000000000012017050040110000001450000000193
Funcionamento (envio um arquivo em pdf com cores que fica mais visível os procedimentos de alteração
Arquivo .txt:
1000000700172017050040110000003080000000193
1000000700172017050205110000014880000000193
1000000700172017050400110000002800000000193
• Leitura:
Funcionário (código 17) teve:
Horas faltas (evento 0040): 3,08
Hora extra 75% (evento 0205): 14,88
evento 0400 não fazer o cálculo manter o mesmo valor
8ª digito substituir por “0”
• Fazer o desconto:
14,88-3,08 = 11,80
• Novo Leiaute:
1000000000172017050205110000011800000000193
1000000000172017050400110000002800000000193
evento 0400 manter o mesmo valor
evento 0040 não considerar no novo leiaute
No programa também deve ter um campo para alterar o MMAAAA
exemplo: MMAAAA 08/2017
1000000000172017050205110000011800000000193
1000000000172017050400110000002800000000193
Alteração:
1000000000172017080205110000011800000000193
1000000000172017080400110000002800000000193
Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Roles needed Developer
Delivery term: Not specified
Skills needed