Vous êtes sur la page 1sur 25

NDICE

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

PLANILLA DE SUELDOS SUELDN


INTRODUCCIN En el ltimo decenio un nmero considerable de organizaciones del sector privado y algunas del sector pblico han explorado distintas maneras de hacer uso ptimo de los recursos escasos de que disponen concentrndose en sus misiones bsicas y subcontratando o "deslocalizando" las actividades que no son crticas, en particular las administrativas, tales como la gestin de la planilla de sueldos, el registro de datos, etc. Una nmina de sueldos es una relacin nominal de las personas que perciben haberes en una oficina pblica o privada Un sistema de elaboracin de la nmina de sueldos puede definirse como un sistema informtico utilizado por una organizacin para procesar y pagar los sueldos de los empleados. Cabe destacar que la expresin "sistema de elaboracin de la nmina de sueldos" se suele usar para referirse a un sistema informtico que procesa la nmina de sueldos. La elaboracin de Sueldn es en forma lgica y sencilla. Incluye un conjunto definido de elementos que estipulan las condiciones de pago, tales como estructura de sueldos, estructura fiscal, beneficios y prestaciones, frecuencia y fecha de los pagos, etc.

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

Por qu del nombre


Este proyecto fue bautizado como Sueldn debido a que es una pequea planilla de sueldos que sirve como base para realizar en el futuro una ms compleja con la implementacin de nuevos elementos.

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

Calculo de liquido pagable

rep 0

Impresin de planilla

Fin

Diagrama de Flujo Modulo 1(Case1) nom

id

MENU DE SELECCIN DE CARGO

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

ESCRIBIR CARGO POR TECLADO

FIN

VII

Diagrama de Flujo Modulo 2(Case2) nom

id

MENU DE SELECCIN DE CARGO

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

ESCRIBIR CARGO POR TECLADO

FIN

IX

Diagrama de Flujo Modulo 3(Case3)

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

Diagrama de Flujo Modulo 4(Case 4)

id!=0

ant<2

b1=0 b2=0 b3=0 b1=0 b2=0 b3=0 b1=0 b2=0 b3=0

ant>=2 ^ ant<4 ant>=4 ^ ant<30 b1=0 b2=0 b3=0

ttb=b1+b2+b3

iva=sue*13/100 seg=sue*2/100 afp=sue*3/100 ttd=iva+seg+afp

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. ==================================================

desea modificar algun dato?

si

no

Vuelve hasta despus de la declaracion de variables.

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

//variables para las operaciones /*id sirve como

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,

//menus /*modificar sirve para en

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

//fuera del switch if (id!=0) { //verifica si hay datos en el programa

//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

} } }//fin de los calculos }//fin del do while while (rep!=0); } }

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