Escolar Documentos
Profissional Documentos
Cultura Documentos
Indice Introduccin Objetivos Objetivo General Objetivo Especifico Tiempo de Ejecucin Diagramas de Flujo Diagrama de flujo general Diagrama de flujo por modulos DF Modulo 1 DF Modulo 2 DF Modulo 3 DF Modulo 4 Codigo en Java Anexos Conclusiones Recomendaciones I II III III III IV V V VI VI VIII X XII XIV XXI XXIV XXV
II
OBJETIVOS
a) Objetivo General Sueldn es un proyecto dirigido a facilitar el pago de su nmina (sueldos, salarios, bonos, aguinaldos, pensiones y otros beneficios).
b) Objetivos Especficos
Desarrollar una planilla de sueldos como primer paso hacia una planificacin institucional. Agilizar los procedimientos relacionados con las planillas de sueldos. Organizar la estructura de sueldos, estructura fiscal, beneficios y prestaciones, frecuencia y fecha de los pagos.
Llevar un control de los funcionarios que trabajen en una determinada institucin. Simplificar la labor del usuario.
III
Tiempo de Ejecucion
Para ilustrar el tiempo de ejecucin de nuestro proyecto hemos optado por utilizar el siguiente grfico de Gantt: Etapas Diseo proyecto Diagramacion Investigacin otros proyectos Codificacion Redacciones preliminares Redaccin Final Detalles Tiempo (das) Cronograma de Trabajo 3h 1h 1h 1h 2h 2h 1h 1h 3h 2h 1h 4h 2h 1h 3h 1h 2h 1h 7 2h 3h 8 2h
3h
IV
Diagramas de flujo
Diagrama de flujo General
Inicio
Declaracion de variables
Ingresar datos
Modificar datos
Borrar datos
Fin
Calculo de bonos
Calculo de descuentos
rep 0
Impresin de planilla
Fin
id
1.-GERENTE GENERAL 2.-GERENTE 3.-JEFE DE DEPARTAMENTO 4.-SECRETARIA 5.-OPERADOR 6.-OTRO 7.-ESCRIBIR EL CARGO POR TECLADO
M2
M2<1 M2>7
VI
GERENTE GENERAL
GERENTE
JEFE DEPARTAMENTO
SECRETARIA
OPERADOR
OTRO
FIN
VII
id
1.-GERENTE GENERAL 2.-GERENTE 3.-JEFE DE DEPARTAMENTO 4.-SECRETARIA 5.-OPERADOR 6.-OTRO 7.-ESCRIBIR EL CARGO POR TECLADO
M2
M2<1 M2>7
VIII
GERENTE GENERAL
GERENTE
JEFE DEPARTAMENTO
SECRETARIA
OPERADOR
OTRO
FIN
IX
nom==
cargo==
sue==0
ant==0
b1==0
b2==0
b3==0
ttb==0
iva==0
seg==0
afp==0
ttd==0
paga==0
XI
id!=0
ant<2
ttb=b1+b2+b3
paga=sue+ttb-ttd
XII
case2
================================================== Numero ID: "+id Nombre: "+nom Cargo: "+cargo Sueldo: "+sue+" Bs." Bono Antiguedad 1: "+b1+" Bs." Bono Antiguedad 2: "+b2+" Bs." Bono Antiguedad 3: "+b3+" Bs." Total Bonos: "+ttb+" Bs." Descuentos IVA: "+iva+" Bs." Descuentos Seguro: "+seg+" Bs." Descuentos AFP: "+afp+" Bs." ---------------------------------------------------------------------"Total Ganado: "+(sue+ttb)+" Bs." Total Descuentos: "+ttd+" Bs." --------------------------------------------------------------------Liquido Pagable: "+paga+" Bs. ==================================================
si
no
rep!=0
FIN
XIII
CODIGO EN JAVA
/*Proyecto Grupo 3 *Planilla de Sueldos * *Sueldin*/
import java.*; import javax.swing.*; public class sueldin { public static void main(String[]args) { float sue=0,b1,b2,b3,ttb,iva,seg,afp,ttd,paga; int ant=0,id=0; identificador por cada nombre se usara recien en
base de datos al poder almacenar mas de un trabajador*/ int m1=0,m2=0; int rep=0,repe,modificar=0; obviar una doble pregunta caso de que se elija modificar al fin del codigo,
vuelve al principio y entra directo al case 2 que es el case de modificar*/ /*rep sirve para volver al menu principal comienza en 0 *y parte del do while mas grande del programa, incluye a todo el resto del codigo.*/ //repe es momentaneo String nom=""; String cargo=""; JOptionPane.showMessageDialog(null,"BIENVENIDOS A SUELDIN "); do { if(modificar==0) //evita que entre a modificar si es la primera ves que corre { /*Generacion del menu*/ System.out.println(); System.out.println("=========================================="); System.out.println(" MENU PRINCIPAL "); System.out.println("=========================================="); System.out.println(); System.out.println("1) Agregar nuevo trabajador"); System.out.println("2) Modificar datos de trabajador existente"); System.out.println("3) Borrar todos los datos"); System.out.println("4) Salir"); System.out.println(); } else{ } if(modificar==0) //evita que entre a modificar si es la primera ves que corre
XIV
{ do { m1=Integer.parseInt(JOptionPane.showInputDialog("Eliga una opcion del menu principal:")); } while ((m1<1)||(m1>4)); } else { m1=2; /*si llegaste al final y elejiste la opcion modificar te permite entrar directo al case 2 (modificar)*/ } switch (m1) { /*1*/ case 1: { nom=JOptionPane.showInputDialog("Introduzca el nombre del trabajador:"); id=1; //para reconocer que no esta vacio System.out.println("=============================="); System.out.println(" MENU DE SELECCION DE CARGO "); System.out.println("=============================="); System.out.println("1) Gerente General"); System.out.println("2) Gerente"); System.out.println("3) Jefe de departamento"); System.out.println("4) Secretaria"); System.out.println("5) Operador"); System.out.println("6) Otro"); System.out.println("7) Escribir el cargo por teclado"); System.out.println(); do { m2=Integer.parseInt(JOptionPane.showInputDialog("Elija una opcion del menu:")); } while ((m2<1)||(m2>7)); dentro del menu switch (m2) { case 1: { cargo="Gerente General";break; } case 2: { cargo="Gerente";break; } case 3: { cargo="Jefe de departamento";break; } case 4: { //controla que elija una opcion
XV
cargo="Secretaria";break; } case 5: { cargo="Operador";break; } case 6: { cargo="Otro";break; } case 7: { cargo=JOptionPane.showInputDialog("Introduzca el cargo");break; } } do { sue=Float.parseFloat(JOptionPane.showInputDialog("Por favor indique el sueldo de "+nom+" en Bs.:")); } while (sue<450); do { ant=Integer.parseInt(JOptionPane.showInputDialog("Cuantos aos lleva trabajando "+nom+" en la empresa?")); } while ((ant<0)||(ant>30)); //evitar antiguedad negativa o que pase de 30 (jubilado) break; }//fin del case1 /*2*/ case 2: { //fin del switch de pedir cargo
nom=JOptionPane.showInputDialog("El nombre actual es "+nom+", introduzca el nuevo nombre del trabajador:"); id=1; System.out.println("==================================="); System.out.println("Seleccione el nuevo cargo del menu:"); System.out.println("==================================="); System.out.println("1) Gerente General"); System.out.println("2) Gerente"); System.out.println("3) Jefe de departamento"); System.out.println("4) Secretaria"); System.out.println("5) Operador"); System.out.println("6) Otro"); System.out.println("7) Escribir el cargo por teclado"); System.out.println(); do { m2=Integer.parseInt(JOptionPane.showInputDialog("El cargo actual es "+cargo+" elija el nuevo cargo")); }
XVI
while ((m2<1)||(m2>7)); switch (m2) { case 1: { cargo="Gerente General";break; } case 2: { cargo="Gerente";break; } case 3: { cargo="Jefe de departamento";break; } case 4: { cargo="Secretaria";break; } case 5: { cargo="Operador";break; } case 6: { cargo="Otro";break; } case 7: { cargo=JOptionPane.showInputDialog("Introduzca el cargo");break; } } do { sue=Float.parseFloat(JOptionPane.showInputDialog("El sueldo actual de "+nom+" es: "+sue+" Por favor indique el nuevo sueldo en Bs.:")); } while (sue<450); do { ant=Integer.parseInt(JOptionPane.showInputDialog("Cuantos aos lleva trabajando "+nom+" en la empresa?")); } while ((ant<0)||(ant>30)); rep=1; //para que vuelva al menu principal break; }//fin del case2 /*3*/ case 3: { nom=""; cargo=""; sue=0; ant=0;
XVII
b1=0; b2=0; b3=0; ttb=0; iva=0; seg=0; afp=0; ttd=0; paga=0; break; /*4*/ } case 4: { System.exit(0); } } //Fin del switch menu principal
//Calculo de bonos a continuacion if (ant<2) { b1=0; b2=0; b3=0; } else { if ((ant>=2)&&(ant<4)) { b1=sue*10/100; b2=0; b3=0; } else { if ((ant>=4)&&(ant<6)) { b1=sue*10/100; b2=sue*20/100; b3=0; } else { b1=sue*10/100; b2=sue*20/100; b3=sue*35/100; } } } ttb=b1+b2+b3; //total bonos
XVIII
//Calculo de los descuentos a continuacion iva=sue*13/100; seg=sue*2/100; afp=sue*3/100; ttd=iva+seg+afp; paga=sue+ttb-ttd; //Liquido pagable
System.out.println(); System.out.println("====================================================== ========================="); System.out.println("Numero ID: "+id); System.out.println("Nombre: "+nom); System.out.println("Cargo: "+cargo); System.out.println("Sueldo: "+sue+" Bs."); System.out.println("Bono Antiguedad 1: "+b1+" Bs."); System.out.println("Bono Antiguedad 2: "+b2+" Bs."); System.out.println("Bono Antiguedad 3: "+b3+" Bs."); System.out.println("Total Bonos: "+ttb+" Bs."); System.out.println("Descuentos IVA: "+iva+" Bs."); System.out.println("Descuentos Seguro: "+seg+" Bs."); System.out.println("Descuentos AFP: "+afp+" Bs."); System.out.println("-------------------------------------------------------------------------------"); System.out.println(); System.out.println("Total Ganado: "+(sue+ttb)+" Bs."); System.out.println("Total Descuentos: "+ttd+" Bs."); System.out.println("-------------------------------------------------------------------------------"); System.out.println(); System.out.println("Liquido Pagable: "+paga+" Bs."); System.out.println("====================================================== ========================="); System.out.println("Desea modificar algun dato?"); System.out.println("1) Si"); System.out.println("2) No (Salir)"); do { algun dato")); repe=Integer.parseInt(JOptionPane.showInputDialog("Desea modificar //Esta variable es para que vuelva al principio
} while ((repe!=1)&&(repe!=2)); switch (repe) { case 1: { modificar=1; //esto permite volver al menu principal y entra directo al case 2 rep=1;break; //aqui vuelve al principio porq rep=1 } case 2: { JOptionPane.showMessageDialog(null,"GRACIAS POR TRABAJAR CON SUELDIN"); System.exit(0);break;
XIX
XX
ANEXOS
XXI
XXII
XXIII
CONCLUSIONES
El desarrollo y ejecucin de una planilla de sueldos debe realizarse dentro del contexto de un sistema comn de planificacin institucional de los recursos, es decir con la interrelacin de elementos tales como personal, cargo, sueldo, antigedad, bonos, descuentos IVA, descuentos Seguro, descuentos AFP.
XXIV
SUGERENCIAS
El rendimiento de este proyecto de sueldos debe ser aplicado en diferentes organizaciones a fin de individualizar los principales obstculos y elaborar recomendaciones para el futuro mejoramiento del mismo y en consecuencia de los procesos realizados para la planilla sueldos.
XXV