SlideShare une entreprise Scribd logo
1  sur  36
Instituto Tecnológico Superior de Informática
“I T S I”
Materia: Estructura de Datos
Catedrático: Ingeniero Jorge Viveros
Alumno: Esteban Maldonado
Curso: 2do Sistemas Nocturno
Proyecto Tercera Parcial
Tema:
Realización de una aplicación JAVA
Nombre de la Aplicación:
SICOSETEC
(Sistema Integrado de Costeo de Servicios Técnicos)
Agosto 2015
2
INTRODUCCION
Hoy en la actualidad es necesario que cualquier emprendimiento o negocio
por más pequeño que este sea, cuente con herramientas informáticas de
información y control; para determinar si la finalidad financiera de éste marcha
dentro de lo planificado y dentro de una curva ascendente que demuestre que su
inversión es justificada por la utilidad generada en un lapso determinado de tiempo.
Desde mi punto de vista es importante mantener un control adecuado de los
ingresos relacionados con los servicios técnicos brindados por una empresa de
servicios, y en esta ocasión nos centraremos en un tipo de negocio que se dedique a
brindar servicios de asesoría técnica informática, mantenimiento y reparación de
equipos de computación tanto de escritorio como portátiles.
Estos negocios “Servicios Técnicos” tienen en su mayoría una administración
y control empíricas, o manuales, las mismas que dejan cosas pendientes como
plazos exactos de entrega, detalles del trabajo realizado y los costos exactos por
servicios. Claro que en el presente proyecto no nos dedicaremos al área de control
de los servicios técnicos prestados en sí, que sería un tema importante para futuros
proyectos.
Lo que nos compete en esta ocasión es controlar en este negocio el costo de
los servicios técnicos brindados en la oficina y fuera de ella, que de manera general
se desarrollan diariamente, para llevar un registro y de ser posible crear una base de
datos que organice y almacene los datos personales de clientes potenciales actuales
y futuros, asignando de forma ágil y oportuna valores exactos a los servicios;
estando estos mismos a permanente alcance del propietario o administrador del
negocio, como una base de datos muy necesaria para la “prospectación” la misma
que sea información útil para la toma de decisiones pertinentes y adecuadas que
promuevan el desarrollo y crecimiento del emprendimiento.
3
OBJETIVO
El objetivo de este proyecto es desarrollar una aplicación utilizando la
plataforma informática o lenguaje de programación Java, esta aplicación estará
orientada a ser utilizada diariamente por empresas pequeñas, medianas y grandes
que se dedican a brindar servicios de mantenimiento y reparación de computadoras
y equipos afines a la rama en general, como una herramienta para crear una base
de datos de clientes y costear adecuadamente los servicios que se brindará a los
mismos.
Java es un lenguaje ampliamente difundido y utilizado en un sin número de
aplicaciones y sitios web y cada día se crean más. El lenguaje Java es rápido,
seguro y fiable. Se utiliza en equipos portátiles hasta centros de datos, desde
consolas para juegos hasta súper computadoras, desde teléfonos móviles hasta
Internet, Java está en todas partes y considero una herramienta óptima para
desarrollar esta aplicación.
Dicha aplicación permitirá al usuario de la misma almacenar datos personales
de los clientes que visitan sus oficinas diariamente, creando una base de datos muy
útil para la prospectación y manejo de clientes; además cotizar ágilmente el costo el
costo de un servicio técnico específico y comúnmente requerido, esta información es
importante tanto para el cliente como para el encargado de la oficina. Por ende el
objetivo para crear esta aplicación en proporcionar al usuario esta valiosa
“información” del costo de tal o cual servicio y permitirle obtener el “control” de la
misma; como herramienta fundamental para el desarrollo sostenido y crecimiento
constante de su empresa.
4
JUSTIFICACION
El desarrollo de este proyecto y aplicación utilizando el lenguaje de
programación Java para empresas de servicios técnicos computacionales y
asesoría informática, se justifica por la necesidad de brindar al usuario una
herramienta de información y control de los costos de los servicios técnicos que se
requieren, en el desarrollo de la actividad de un taller u oficina de “Servicio Técnico”,
así como la necesidad de crear y administrar de manera eficiente una base de datos
de clientes potenciales, anteriores, actuales y futuros, como principal combustible
para su empresa.
Esta aplicación se utilizará diariamente por la persona encargada de recibir a
los clientes, registrar sus datos, almacenarlos y cotizar de ,manera oportuna el
precio a pagar por los servicios que se brinda en la oficina o fuera de ella.
Designando al personal técnico que sale de la oficina para brindar servicio técnico a
domicilio.
Para el caso por ejemplo de un servicio técnico a domicilio, se cargará un
valor adicional considerado justo para cubrir gastos de movilización o transporte del
personal técnico. Siendo modificable por la distancia y el tiempo que requiera el
servicio técnico, incluso si en el sitio de trabajo se necesite materiales adicionales no
previstos, ya que este servicio brindado puede ser dentro o fuera de la ciudad,
incluso fuera de la provincia.
En la práctica se han presentado casos en este tipo de empresas, en donde
un servicio técnico de “cableado estructurado” o instalación de un sistema de
vigilancia mediante una “red de cámaras IP”, o una instalación y configuración de un
“cyber”, han llevado varios días, lo que conlleva a realizar egresos extras por
movilización, transporte, viáticos etc. Los mismos que es necesario que se controlen
exactamente y se recuperen en la facturación final y total del servicio técnico
realizado por el personal técnico de la empresa.
De aquí en adelante llamaremos a esta aplicación Java, Sistema Integrado
de Costeo de Servicios Técnicos “SICOSETEC”.
5
DESARROLLO
Para el desarrollo de esta aplicación utilizaremos varias herramientas que
vienen precargadas dentro de Java (Netbeans IDE 8.0.2), que es la plataforma
informática o lenguaje de programación que usaremos para crear el programa
SICOSETEC_2015 (Sistema Integrado de Costeo de Servicios Técnicos) aplicable a
empresas dedicadas a brindar servicio de soporte técnico, mantenimiento y
reparación de computadores, y venta de partes, piezas, accesorios y afines a su
rama de negocio.
Una vez creada la aplicación de consola en Java modo gráfico, con su
respectivo “package” y seleccionada la consola Java Frame Form, iniciaremos la
construcción de la aplicación.
Plataforma informática / Lenguaje de Programación Java (Netbeans IDE 8.0.2).
Es importante recalcar que todas las herramientas de este lenguaje en modo gráfico
se pueden, personalizar o modificar a gusto del programador, utilizando el campo de
“properties” “binding” “events” “code”, propiedades, unión, eventos, código, las
mismas que son características aplicables a las herramientas, por ejemplo: “label”,
“textfield”, “checkbutton”, “toogle button” etc, etc.
6
Herramientas Java (Modo Grafico) y sus propiedades.
Posteriormente al diseño adecuado y óptimo de la aplicación, en modo
gráfico se procede a modificar el texto y el nombre de la variable (variable name) de
las herramientas utilizadas en la construcción del “frame”, para posterior realizar la
escritura del código, que generará las acciones previstas del programa.
7
Java Frame Form (con herramientas personalizables)
8
Finalmente y realizando numerosas pruebas ediciones, modificaciones y
comprobaciones de la compilación del código de cada una de las herramientas
utilizadas en el frame, logramos obtener los eventos, acciones y cálculos previstos
en la aplicación Formulario SICOSETEC.
A continuación y como ilustración mostramos todo el código y las variables utilizadas
en el desarrollo de la aplicación.
DESARROLLO DEL CÓDIGO
package pckSicosetec;
import javax.swing.JOptionPane;
public class Formulario_SICOSETEC extends javax.swing.JFrame {
public Formulario_SICOSETEC() {
initComponents();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
buttonGroup1 = new javax.swing.ButtonGroup();
buttonGroup2 = new javax.swing.ButtonGroup();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
tbtManba = new javax.swing.JToggleButton();
tbtForccr = new javax.swing.JToggleButton();
9
tbtForcsr = new javax.swing.JToggleButton();
chbJefet = new javax.swing.JCheckBox();
chbAsist = new javax.swing.JCheckBox();
jLabel7 = new javax.swing.JLabel();
lblMantb = new javax.swing.JLabel();
lblFcr = new javax.swing.JLabel();
lblFsr = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jLabel11 = new javax.swing.JLabel();
lblResultado = new javax.swing.JLabel();
lblCargo = new javax.swing.JLabel();
jLabel9 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
jLabel12 = new javax.swing.JLabel();
jLabel13 = new javax.swing.JLabel();
jLabel14 = new javax.swing.JLabel();
jLabel15 = new javax.swing.JLabel();
jLabel16 = new javax.swing.JLabel();
jLabel17 = new javax.swing.JLabel();
txtNom = new javax.swing.JTextField();
txtDir = new javax.swing.JTextField();
txtTelfs = new javax.swing.JTextField();
txtMail = new javax.swing.JTextField();
tbtGrab = new javax.swing.JToggleButton();
10
btnCont = new javax.swing.JButton();
jLabel18 = new javax.swing.JLabel();
txtCel = new javax.swing.JTextField();
jLabel19 = new javax.swing.JLabel();
txtCiud = new javax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel1.setForeground(new java.awt.Color(0, 51, 153));
jLabel1.setText(" S I C O S E T E C_2 0 1 5");
jLabel2.setForeground(new java.awt.Color(0, 0, 255));
jLabel2.setText("Costos de Servicios Técnicos");
jLabel3.setForeground(new java.awt.Color(0, 102, 204));
jLabel3.setText("Servicio en Oficina");
jLabel4.setForeground(new java.awt.Color(0, 102, 204));
jLabel4.setText("Servicio a Domicilio");
buttonGroup2.add(tbtManba);
tbtManba.setForeground(new java.awt.Color(0, 102, 204));
tbtManba.setText("Mantenimiento Básico (PC/Laptop)");
buttonGroup2.add(tbtForccr);
11
tbtForccr.setForeground(new java.awt.Color(0, 102, 204));
tbtForccr.setText("Formateo Completo (con respaldos)");
buttonGroup2.add(tbtForcsr);
tbtForcsr.setForeground(new java.awt.Color(0, 102, 204));
tbtForcsr.setText("Formateo Completo (sin respaldos)");
buttonGroup1.add(chbJefet);
chbJefet.setForeground(new java.awt.Color(0, 102, 204));
chbJefet.setText(" Jefe Técnico");
buttonGroup1.add(chbAsist);
chbAsist.setForeground(new java.awt.Color(0, 102, 204));
chbAsist.setText("Asistente Técnico");
jLabel7.setForeground(new java.awt.Color(0, 102, 204));
jLabel7.setText(" COSTO TOTAL SERVICIO TECNICO");
lblMantb.setForeground(new java.awt.Color(0, 102, 204));
lblMantb.setText("20");
lblFcr.setForeground(new java.awt.Color(0, 102, 204));
lblFcr.setText("30");
lblFsr.setForeground(new java.awt.Color(0, 102, 204));
lblFsr.setText("25");
12
jButton1.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
jButton1.setForeground(new java.awt.Color(0, 0, 153));
jButton1.setText("Calcular");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
jButton2.setForeground(new java.awt.Color(0, 0, 153));
jButton2.setText("Salir");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jLabel11.setForeground(new java.awt.Color(0, 51, 153));
jLabel11.setText("( El recargo es:");
lblResultado.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
lblResultado.setForeground(new java.awt.Color(0, 0, 255));
lblResultado.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 0, 0)));
lblCargo.setForeground(new java.awt.Color(0, 51, 153));
13
lblCargo.setText(" 5");
jLabel9.setForeground(new java.awt.Color(0, 51, 153));
jLabel9.setText(" (Más recargo por transporte y viáticos )");
jLabel6.setForeground(new java.awt.Color(0, 51, 153));
jLabel6.setText(" USD - Precios NO incluyen 12% IVA)");
jLabel8.setForeground(new java.awt.Color(0, 102, 204));
jLabel8.setText("USD");
jLabel10.setForeground(new java.awt.Color(0, 102, 204));
jLabel10.setText("USD");
jLabel12.setForeground(new java.awt.Color(0, 102, 204));
jLabel12.setText("USD");
jLabel13.setForeground(new java.awt.Color(0, 0, 255));
jLabel13.setText("Datos Personales del Cliente");
jLabel14.setForeground(new java.awt.Color(0, 102, 204));
jLabel14.setText("Nombres / Apellidos");
jLabel15.setForeground(new java.awt.Color(0, 102, 204));
jLabel15.setText("Dirección del Domicilio");
jLabel16.setForeground(new java.awt.Color(0, 102, 204));
14
jLabel16.setText("Teléfono Convencional");
jLabel17.setForeground(new java.awt.Color(0, 102, 204));
jLabel17.setText("Correo Electrónico");
txtNom.setForeground(new java.awt.Color(0, 0, 51));
txtDir.setForeground(new java.awt.Color(0, 0, 51));
txtTelfs.setForeground(new java.awt.Color(0, 0, 51));
txtMail.setForeground(new java.awt.Color(0, 0, 51));
tbtGrab.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
tbtGrab.setForeground(new java.awt.Color(0, 0, 153));
tbtGrab.setText("Grabar");
btnCont.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
btnCont.setForeground(new java.awt.Color(0, 0, 153));
btnCont.setText("Verificar Datos");
btnCont.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnContActionPerformed(evt);
}
});
jLabel18.setForeground(new java.awt.Color(0, 102, 204));
15
jLabel18.setText("Celular");
txtCel.setForeground(new java.awt.Color(0, 0, 51));
jLabel19.setForeground(new java.awt.Color(0, 102, 204));
jLabel19.setText("Ciudad de Residencia");
txtCiud.setForeground(new java.awt.Color(0, 0, 51));
javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 184,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(327, 327, 327))
.addGroup(layout.createSequentialGroup()
.addGap(108, 108, 108)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
16
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR
AILING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel17,
javax.swing.GroupLayout.PREFERRED_SIZE, 110,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtMail,
javax.swing.GroupLayout.PREFERRED_SIZE, 266,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel14,
javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.PREFERRED_SIZE, 162,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel16,
javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jLabel15,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING, false)
17
.addComponent(txtDir)
.addComponent(txtNom)
.addGroup(layout.createSequentialGroup()
.addComponent(txtTelfs,
javax.swing.GroupLayout.PREFERRED_SIZE, 92,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jLabel18,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(txtCel,
javax.swing.GroupLayout.PREFERRED_SIZE, 106,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(txtCiud,
javax.swing.GroupLayout.PREFERRED_SIZE, 124,
javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGap(315, 315, 315))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addComponent(lblResultado,
javax.swing.GroupLayout.PREFERRED_SIZE, 275,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 223,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 125,
javax.swing.GroupLayout.PREFERRED_SIZE)
18
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addComponent(chbJefet))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel4,
javax.swing.GroupLayout.PREFERRED_SIZE, 125,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addComponent(chbAsist,
javax.swing.GroupLayout.PREFERRED_SIZE, 121,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel11,
javax.swing.GroupLayout.PREFERRED_SIZE, 85,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(lblCargo,
javax.swing.GroupLayout.PREFERRED_SIZE, 18,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addComponent(jLabel6,
javax.swing.GroupLayout.PREFERRED_SIZE, 221,
javax.swing.GroupLayout.PREFERRED_SIZE))
19
.addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 234,
javax.swing.GroupLayout.PREFERRED_SIZE))))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR
AILING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING, false)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addComponent(tbtForccr,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(tbtForcsr,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGap(33, 33, 33)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING, false)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(lblFsr)
20
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel12))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(lblFcr,
javax.swing.GroupLayout.PREFERRED_SIZE, 16,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jLabel10))))
.addGroup(layout.createSequentialGroup()
.addComponent(tbtManba,
javax.swing.GroupLayout.PREFERRED_SIZE, 240,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(31, 31, 31)
.addComponent(lblMantb,
javax.swing.GroupLayout.PREFERRED_SIZE, 18,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jLabel8)))
.addComponent(jLabel7,
javax.swing.GroupLayout.PREFERRED_SIZE, 240,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addComponent(jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE, 118,
javax.swing.GroupLayout.PREFERRED_SIZE)
21
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE, 118,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR
AILING)
.addComponent(btnCont,
javax.swing.GroupLayout.PREFERRED_SIZE, 121,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tbtGrab,
javax.swing.GroupLayout.PREFERRED_SIZE, 121,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addComponent(jLabel13,
javax.swing.GroupLayout.PREFERRED_SIZE, 178,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel19,
javax.swing.GroupLayout.PREFERRED_SIZE, 133,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(0, 0, Short.MAX_VALUE)))
.addGap(111, 111, 111))))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap()
22
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 41,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(4, 4, 4)
.addComponent(jLabel13)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel14)
.addComponent(txtNom,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel19)
.addComponent(txtCiud,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(14, 14, 14)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel15)
.addComponent(txtDir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
23
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel16)
.addComponent(txtTelfs,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel18)
.addComponent(txtCel,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(txtMail,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel17))
.addComponent(tbtGrab))
.addGap(18, 18, 18)
.addComponent(btnCont)
.addGap(11, 11, 11)
24
.addComponent(jLabel2)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel3)
.addComponent(chbJefet))
.addGap(12, 12, 12)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel4)
.addComponent(chbAsist)
.addComponent(jLabel9))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel11)
.addComponent(lblCargo,
javax.swing.GroupLayout.PREFERRED_SIZE, 24,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(tbtManba,
javax.swing.GroupLayout.PREFERRED_SIZE, 23,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblMantb)
25
.addComponent(jLabel8))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(tbtForccr,
javax.swing.GroupLayout.PREFERRED_SIZE, 24,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblFcr)
.addComponent(jLabel10))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(tbtForcsr,
javax.swing.GroupLayout.PREFERRED_SIZE, 23,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblFsr)
.addComponent(jLabel12)
.addComponent(jButton1))
.addGap(30, 30, 30)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA
SELINE)
.addComponent(jLabel7)
.addComponent(jButton2))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED
)
26
.addComponent(lblResultado,
javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(67, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
dispose(); // TODO add your handling code here:
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
double manten_bas=0;
double forcomconres=0;
double forcomsinres=0;
double costoadi;
double totalserv;
double cargo=5;
double iva;
double sinrec;
manten_bas = Double.parseDouble(lblMantb.getText());
forcomconres = Double.parseDouble(lblFcr.getText());
forcomsinres = Double.parseDouble(lblFsr.getText());
27
String mensaje= " ";
if(chbJefet.isSelected()||chbAsist.isSelected())
{
if (chbJefet.isSelected())
{
if (tbtManba.isSelected()|| tbtForccr.isSelected() ||
tbtForcsr.isSelected())
{
costoadi= 0;
if (tbtManba.isSelected())
{
costoadi = costoadi + manten_bas;
}
if (tbtForccr.isSelected())
{
costoadi = costoadi + forcomconres;
}
if (tbtForcsr.isSelected())
{
costoadi = costoadi + forcomsinres;
}
28
iva= costoadi*0.12;
costoadi = costoadi+iva;
lblResultado.setText(" Valor a Cancelar " + costoadi + " USD
Incluye 12% IVA");
JOptionPane.showMessageDialog(this, "No se recargó ningún
valor adicional");
JOptionPane.showMessageDialog(this, "El valor a cancelar es:
"+costoadi+" USD");
}
else
{
JOptionPane.showMessageDialog(this, "Atención!n Ud no
seleccionó ninguna opción n Por favor ingrese el tipo de servicio técnico que
desea");
}
}
if (chbAsist.isSelected()) {
costoadi= cargo;
if (tbtManba.isSelected()|| tbtForccr.isSelected() ||
tbtForcsr.isSelected())
{
if (tbtManba.isSelected())
{
29
costoadi = costoadi + manten_bas;
}
if (tbtForccr.isSelected())
{
costoadi = costoadi + forcomconres;
}
if (tbtForcsr.isSelected())
{
costoadi = costoadi + forcomsinres;
}
iva= costoadi*0.12;
costoadi = costoadi+iva;
lblResultado.setText(" Valor a Cancelar " + costoadi + " USD
Incluye 12% IVA");
JOptionPane.showMessageDialog(this, " Se cargó 5 usd más por
concepto de transporte");
JOptionPane.showMessageDialog(this, "El valor a cancelar es:
"+costoadi+" USD");
}
else
{
JOptionPane.showMessageDialog(this, "Atención!n Ud. no
seleccionó ninguna opción n Por favor ingrese el tipo de servicio técnico que
desea");
}
}
}
else
30
{
cargo=0;
JOptionPane.showMessageDialog(this, "Atención!n Ud. no
seleccionó ninguna opción n Por favor ingrese una opción");
}
}
private void btnContActionPerformed(java.awt.event.ActionEvent evt) {
String Nombre;
String Dire;
String Telfs;
String Mail;
String Texto;
String Ciudad;
String Telf2;
Nombre = (txtNom.getText());
Ciudad = (txtCiud.getText());
Dire = (txtDir.getText());
Telfs = (txtTelfs.getText());
Telf2 = (txtCel.getText());
Mail = (txtMail.getText());
if (tbtGrab.isSelected())
{
Texto = Nombre;
31
Texto = Ciudad;
Texto = Dire;
Texto = Telfs;
Texto = Telf2;
Texto = Mail;
}
JOptionPane.showMessageDialog(this, "Datos del Cliente: n"+Nombre
+"n"+Ciudad+"n"+Dire+"n"+Telfs+"n"+Telf2+"n"+Mail);
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default
look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
32
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo
g(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo
g(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo
g(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo
g(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Formulario_SICOSETEC().setVisible(true);
}
});
33
}
// Variables declaration - do not modify
private javax.swing.JButton btnCont;
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.ButtonGroup buttonGroup2;
private javax.swing.JCheckBox chbAsist;
private javax.swing.JCheckBox chbJefet;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel13;
private javax.swing.JLabel jLabel14;
private javax.swing.JLabel jLabel15;
private javax.swing.JLabel jLabel16;
private javax.swing.JLabel jLabel17;
private javax.swing.JLabel jLabel18;
private javax.swing.JLabel jLabel19;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
34
private javax.swing.JLabel jLabel9;
private javax.swing.JLabel lblCargo;
private javax.swing.JLabel lblFcr;
private javax.swing.JLabel lblFsr;
private javax.swing.JLabel lblMantb;
private javax.swing.JLabel lblResultado;
private javax.swing.JToggleButton tbtForccr;
private javax.swing.JToggleButton tbtForcsr;
private javax.swing.JToggleButton tbtGrab;
private javax.swing.JToggleButton tbtManba;
private javax.swing.JTextField txtCel;
private javax.swing.JTextField txtCiud;
private javax.swing.JTextField txtDir;
private javax.swing.JTextField txtMail;
private javax.swing.JTextField txtNom;
private javax.swing.JTextField txtTelfs;
// End of variables declaration
}
USO DE LA APLICACIÓN SICOSETEC_2015
DETALLE
1) Ingresamos los Datos personales del Cliente.
2) Grabamos y Verificamos esta Información.
3) Seleccionamos la persona en cargada de realizar el Servicio Técnico y el sitio
de trabajo.
4) Seleccionamos el tipo de Servicio Técnico(Costo precargados)
5) Verificamos si por el sitio de trabajo existe o no recargo adicional
6) Obtenemos el resultado del Costo (ya incluido el 12% IVA)
7) Salimos de la aplicación.
35
DESARROLLO DE LA APLICACIÓN “SICOSETEC_2015” TERMINADA
COMPILACION
36

Contenu connexe

En vedette

AgileTour Toulouse 2012 : agilité, innovation utile au business !
AgileTour Toulouse 2012 : agilité, innovation utile au business !AgileTour Toulouse 2012 : agilité, innovation utile au business !
AgileTour Toulouse 2012 : agilité, innovation utile au business !Agile Toulouse
 
Commercialisation de ressources numériques. Modèles, Modalités, Enjeux
Commercialisation de ressources numériques. Modèles, Modalités, EnjeuxCommercialisation de ressources numériques. Modèles, Modalités, Enjeux
Commercialisation de ressources numériques. Modèles, Modalités, EnjeuxCairn.info
 
Que sont le quotient conjugal et le quotient familial ?
Que sont le quotient conjugal et le quotient familial ?Que sont le quotient conjugal et le quotient familial ?
Que sont le quotient conjugal et le quotient familial ?bixiou
 
Conseils nutrition isabelle huot
Conseils nutrition isabelle huotConseils nutrition isabelle huot
Conseils nutrition isabelle huotMartine Éthier
 
Les provinces de l'atlantique
Les provinces de l'atlantiqueLes provinces de l'atlantique
Les provinces de l'atlantiquejocelynerichard
 
Symantec cloud
Symantec cloudSymantec cloud
Symantec cloudmickaelday
 
Recensement des actions vie affective et sexuelle en deux-Sèvres
Recensement des actions vie affective et sexuelle en deux-SèvresRecensement des actions vie affective et sexuelle en deux-Sèvres
Recensement des actions vie affective et sexuelle en deux-SèvresIreps
 
Graphs for questionnaire
Graphs for questionnaireGraphs for questionnaire
Graphs for questionnairePreston Manor
 
Le processus de racialisation du discours - Patrick Cloos - 2015
Le processus de racialisation du discours - Patrick Cloos - 2015Le processus de racialisation du discours - Patrick Cloos - 2015
Le processus de racialisation du discours - Patrick Cloos - 2015CentrERE
 
LGeek Week | #LGeekXperience | E-reputation des Entreprises
LGeek Week | #LGeekXperience | E-reputation des EntreprisesLGeek Week | #LGeekXperience | E-reputation des Entreprises
LGeek Week | #LGeekXperience | E-reputation des EntreprisesMohamed Amine Fadli
 

En vedette (20)

AgileTour Toulouse 2012 : agilité, innovation utile au business !
AgileTour Toulouse 2012 : agilité, innovation utile au business !AgileTour Toulouse 2012 : agilité, innovation utile au business !
AgileTour Toulouse 2012 : agilité, innovation utile au business !
 
Accidentes
AccidentesAccidentes
Accidentes
 
Aquitaine
AquitaineAquitaine
Aquitaine
 
News fiction 2010
News fiction 2010News fiction 2010
News fiction 2010
 
Projet Educatif
Projet EducatifProjet Educatif
Projet Educatif
 
Livre blanc auto-entrepreneur 2013
Livre blanc auto-entrepreneur 2013Livre blanc auto-entrepreneur 2013
Livre blanc auto-entrepreneur 2013
 
Commercialisation de ressources numériques. Modèles, Modalités, Enjeux
Commercialisation de ressources numériques. Modèles, Modalités, EnjeuxCommercialisation de ressources numériques. Modèles, Modalités, Enjeux
Commercialisation de ressources numériques. Modèles, Modalités, Enjeux
 
Angel
AngelAngel
Angel
 
Qué es google docs
Qué es google docsQué es google docs
Qué es google docs
 
Que sont le quotient conjugal et le quotient familial ?
Que sont le quotient conjugal et le quotient familial ?Que sont le quotient conjugal et le quotient familial ?
Que sont le quotient conjugal et le quotient familial ?
 
Conseils nutrition isabelle huot
Conseils nutrition isabelle huotConseils nutrition isabelle huot
Conseils nutrition isabelle huot
 
Chocolat Du Coeur
Chocolat Du CoeurChocolat Du Coeur
Chocolat Du Coeur
 
Conférence chine - Dr. Igor Mauler Santiago - 2011.02.01
Conférence chine - Dr. Igor Mauler Santiago - 2011.02.01Conférence chine - Dr. Igor Mauler Santiago - 2011.02.01
Conférence chine - Dr. Igor Mauler Santiago - 2011.02.01
 
Les provinces de l'atlantique
Les provinces de l'atlantiqueLes provinces de l'atlantique
Les provinces de l'atlantique
 
Symantec cloud
Symantec cloudSymantec cloud
Symantec cloud
 
Recensement des actions vie affective et sexuelle en deux-Sèvres
Recensement des actions vie affective et sexuelle en deux-SèvresRecensement des actions vie affective et sexuelle en deux-Sèvres
Recensement des actions vie affective et sexuelle en deux-Sèvres
 
Graphs for questionnaire
Graphs for questionnaireGraphs for questionnaire
Graphs for questionnaire
 
Horno Teka HKL 870
Horno Teka HKL 870 Horno Teka HKL 870
Horno Teka HKL 870
 
Le processus de racialisation du discours - Patrick Cloos - 2015
Le processus de racialisation du discours - Patrick Cloos - 2015Le processus de racialisation du discours - Patrick Cloos - 2015
Le processus de racialisation du discours - Patrick Cloos - 2015
 
LGeek Week | #LGeekXperience | E-reputation des Entreprises
LGeek Week | #LGeekXperience | E-reputation des EntreprisesLGeek Week | #LGeekXperience | E-reputation des Entreprises
LGeek Week | #LGeekXperience | E-reputation des Entreprises
 

Similaire à Aplicación Java para control de costos de servicios técnicos

Proyecto 3ra parcial Esteban Maldonado - 2do Sistemas Nocturno
Proyecto 3ra parcial   Esteban Maldonado - 2do Sistemas NocturnoProyecto 3ra parcial   Esteban Maldonado - 2do Sistemas Nocturno
Proyecto 3ra parcial Esteban Maldonado - 2do Sistemas NocturnoEsteban Maldonado
 
Proyecto Integrador Presentacion
Proyecto Integrador   PresentacionProyecto Integrador   Presentacion
Proyecto Integrador Presentacionguest75d1acb
 
Proyecto Integrador Presentacion
Proyecto Integrador   PresentacionProyecto Integrador   Presentacion
Proyecto Integrador Presentacionguest75d1acb
 
Proyecto final programación avanzada
Proyecto final programación avanzadaProyecto final programación avanzada
Proyecto final programación avanzadaIsrael Rey
 
CV_Ricardo_Bouyer 2014
CV_Ricardo_Bouyer 2014CV_Ricardo_Bouyer 2014
CV_Ricardo_Bouyer 2014Ricardo Bouyer
 
Implementación y Desarrollo de un Aplicativo para e-commerce-Inicio
Implementación y Desarrollo de un Aplicativo para e-commerce-InicioImplementación y Desarrollo de un Aplicativo para e-commerce-Inicio
Implementación y Desarrollo de un Aplicativo para e-commerce-InicioDharma Consulting
 
Software Factory Boutique - Aplicaciones Web & Mobile
Software Factory Boutique - Aplicaciones Web & MobileSoftware Factory Boutique - Aplicaciones Web & Mobile
Software Factory Boutique - Aplicaciones Web & MobilePaula Cecilia Striani
 
Diseno implementacion sistema_informacion7-2
Diseno implementacion sistema_informacion7-2Diseno implementacion sistema_informacion7-2
Diseno implementacion sistema_informacion7-2TF Larsen
 
Integración del caso de negocios
Integración del caso de negociosIntegración del caso de negocios
Integración del caso de negocioslingos64
 
Integración del caso de negocios
Integración del caso de negociosIntegración del caso de negocios
Integración del caso de negocioslingos64
 
Integracion del caso de negocios
Integracion del caso de negociosIntegracion del caso de negocios
Integracion del caso de negocioslingos64
 
Integracion del caso de negocios
Integracion del caso de negociosIntegracion del caso de negocios
Integracion del caso de negocioslingos64
 
0001-Informe de Factibilidad de Proyecto (1).docx
0001-Informe de Factibilidad de Proyecto (1).docx0001-Informe de Factibilidad de Proyecto (1).docx
0001-Informe de Factibilidad de Proyecto (1).docxBrayanPUMAVILLA
 
PRESTAMITO: Proyecto sistemas de información
PRESTAMITO: Proyecto sistemas de información PRESTAMITO: Proyecto sistemas de información
PRESTAMITO: Proyecto sistemas de información AnaPRodriguezPosadas
 
Proyecto Final Grupo 282
Proyecto Final Grupo 282Proyecto Final Grupo 282
Proyecto Final Grupo 282Juan Molina
 

Similaire à Aplicación Java para control de costos de servicios técnicos (20)

Proyecto 3ra parcial Esteban Maldonado - 2do Sistemas Nocturno
Proyecto 3ra parcial   Esteban Maldonado - 2do Sistemas NocturnoProyecto 3ra parcial   Esteban Maldonado - 2do Sistemas Nocturno
Proyecto 3ra parcial Esteban Maldonado - 2do Sistemas Nocturno
 
Proyecto Integrador Presentacion
Proyecto Integrador   PresentacionProyecto Integrador   Presentacion
Proyecto Integrador Presentacion
 
Proyecto Integrador Presentacion
Proyecto Integrador   PresentacionProyecto Integrador   Presentacion
Proyecto Integrador Presentacion
 
Proyecto final programación avanzada
Proyecto final programación avanzadaProyecto final programación avanzada
Proyecto final programación avanzada
 
HOTFIXBASE
HOTFIXBASEHOTFIXBASE
HOTFIXBASE
 
CV_Ricardo_Bouyer 2014
CV_Ricardo_Bouyer 2014CV_Ricardo_Bouyer 2014
CV_Ricardo_Bouyer 2014
 
Laboratorio jce
Laboratorio jceLaboratorio jce
Laboratorio jce
 
Implementación y Desarrollo de un Aplicativo para e-commerce-Inicio
Implementación y Desarrollo de un Aplicativo para e-commerce-InicioImplementación y Desarrollo de un Aplicativo para e-commerce-Inicio
Implementación y Desarrollo de un Aplicativo para e-commerce-Inicio
 
Casos exito santiago toribio almatech
Casos exito santiago toribio almatechCasos exito santiago toribio almatech
Casos exito santiago toribio almatech
 
Software Factory Boutique
Software Factory BoutiqueSoftware Factory Boutique
Software Factory Boutique
 
Software Factory Boutique - Aplicaciones Web & Mobile
Software Factory Boutique - Aplicaciones Web & MobileSoftware Factory Boutique - Aplicaciones Web & Mobile
Software Factory Boutique - Aplicaciones Web & Mobile
 
Diseno implementacion sistema_informacion7-2
Diseno implementacion sistema_informacion7-2Diseno implementacion sistema_informacion7-2
Diseno implementacion sistema_informacion7-2
 
Integración del caso de negocios
Integración del caso de negociosIntegración del caso de negocios
Integración del caso de negocios
 
Integración del caso de negocios
Integración del caso de negociosIntegración del caso de negocios
Integración del caso de negocios
 
Integracion del caso de negocios
Integracion del caso de negociosIntegracion del caso de negocios
Integracion del caso de negocios
 
Integracion del caso de negocios
Integracion del caso de negociosIntegracion del caso de negocios
Integracion del caso de negocios
 
0001-Informe de Factibilidad de Proyecto (1).docx
0001-Informe de Factibilidad de Proyecto (1).docx0001-Informe de Factibilidad de Proyecto (1).docx
0001-Informe de Factibilidad de Proyecto (1).docx
 
NH Hoteles
NH HotelesNH Hoteles
NH Hoteles
 
PRESTAMITO: Proyecto sistemas de información
PRESTAMITO: Proyecto sistemas de información PRESTAMITO: Proyecto sistemas de información
PRESTAMITO: Proyecto sistemas de información
 
Proyecto Final Grupo 282
Proyecto Final Grupo 282Proyecto Final Grupo 282
Proyecto Final Grupo 282
 

Dernier

Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicialLorenaSanchez350426
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
Técnicas de grabado y estampación : procesos y materiales
Técnicas de grabado y estampación : procesos y materialesTécnicas de grabado y estampación : procesos y materiales
Técnicas de grabado y estampación : procesos y materialesRaquel Martín Contreras
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxEribertoPerezRamirez
 

Dernier (20)

PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicial
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
Técnicas de grabado y estampación : procesos y materiales
Técnicas de grabado y estampación : procesos y materialesTécnicas de grabado y estampación : procesos y materiales
Técnicas de grabado y estampación : procesos y materiales
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
 

Aplicación Java para control de costos de servicios técnicos

  • 1. Instituto Tecnológico Superior de Informática “I T S I” Materia: Estructura de Datos Catedrático: Ingeniero Jorge Viveros Alumno: Esteban Maldonado Curso: 2do Sistemas Nocturno Proyecto Tercera Parcial Tema: Realización de una aplicación JAVA Nombre de la Aplicación: SICOSETEC (Sistema Integrado de Costeo de Servicios Técnicos) Agosto 2015
  • 2. 2 INTRODUCCION Hoy en la actualidad es necesario que cualquier emprendimiento o negocio por más pequeño que este sea, cuente con herramientas informáticas de información y control; para determinar si la finalidad financiera de éste marcha dentro de lo planificado y dentro de una curva ascendente que demuestre que su inversión es justificada por la utilidad generada en un lapso determinado de tiempo. Desde mi punto de vista es importante mantener un control adecuado de los ingresos relacionados con los servicios técnicos brindados por una empresa de servicios, y en esta ocasión nos centraremos en un tipo de negocio que se dedique a brindar servicios de asesoría técnica informática, mantenimiento y reparación de equipos de computación tanto de escritorio como portátiles. Estos negocios “Servicios Técnicos” tienen en su mayoría una administración y control empíricas, o manuales, las mismas que dejan cosas pendientes como plazos exactos de entrega, detalles del trabajo realizado y los costos exactos por servicios. Claro que en el presente proyecto no nos dedicaremos al área de control de los servicios técnicos prestados en sí, que sería un tema importante para futuros proyectos. Lo que nos compete en esta ocasión es controlar en este negocio el costo de los servicios técnicos brindados en la oficina y fuera de ella, que de manera general se desarrollan diariamente, para llevar un registro y de ser posible crear una base de datos que organice y almacene los datos personales de clientes potenciales actuales y futuros, asignando de forma ágil y oportuna valores exactos a los servicios; estando estos mismos a permanente alcance del propietario o administrador del negocio, como una base de datos muy necesaria para la “prospectación” la misma que sea información útil para la toma de decisiones pertinentes y adecuadas que promuevan el desarrollo y crecimiento del emprendimiento.
  • 3. 3 OBJETIVO El objetivo de este proyecto es desarrollar una aplicación utilizando la plataforma informática o lenguaje de programación Java, esta aplicación estará orientada a ser utilizada diariamente por empresas pequeñas, medianas y grandes que se dedican a brindar servicios de mantenimiento y reparación de computadoras y equipos afines a la rama en general, como una herramienta para crear una base de datos de clientes y costear adecuadamente los servicios que se brindará a los mismos. Java es un lenguaje ampliamente difundido y utilizado en un sin número de aplicaciones y sitios web y cada día se crean más. El lenguaje Java es rápido, seguro y fiable. Se utiliza en equipos portátiles hasta centros de datos, desde consolas para juegos hasta súper computadoras, desde teléfonos móviles hasta Internet, Java está en todas partes y considero una herramienta óptima para desarrollar esta aplicación. Dicha aplicación permitirá al usuario de la misma almacenar datos personales de los clientes que visitan sus oficinas diariamente, creando una base de datos muy útil para la prospectación y manejo de clientes; además cotizar ágilmente el costo el costo de un servicio técnico específico y comúnmente requerido, esta información es importante tanto para el cliente como para el encargado de la oficina. Por ende el objetivo para crear esta aplicación en proporcionar al usuario esta valiosa “información” del costo de tal o cual servicio y permitirle obtener el “control” de la misma; como herramienta fundamental para el desarrollo sostenido y crecimiento constante de su empresa.
  • 4. 4 JUSTIFICACION El desarrollo de este proyecto y aplicación utilizando el lenguaje de programación Java para empresas de servicios técnicos computacionales y asesoría informática, se justifica por la necesidad de brindar al usuario una herramienta de información y control de los costos de los servicios técnicos que se requieren, en el desarrollo de la actividad de un taller u oficina de “Servicio Técnico”, así como la necesidad de crear y administrar de manera eficiente una base de datos de clientes potenciales, anteriores, actuales y futuros, como principal combustible para su empresa. Esta aplicación se utilizará diariamente por la persona encargada de recibir a los clientes, registrar sus datos, almacenarlos y cotizar de ,manera oportuna el precio a pagar por los servicios que se brinda en la oficina o fuera de ella. Designando al personal técnico que sale de la oficina para brindar servicio técnico a domicilio. Para el caso por ejemplo de un servicio técnico a domicilio, se cargará un valor adicional considerado justo para cubrir gastos de movilización o transporte del personal técnico. Siendo modificable por la distancia y el tiempo que requiera el servicio técnico, incluso si en el sitio de trabajo se necesite materiales adicionales no previstos, ya que este servicio brindado puede ser dentro o fuera de la ciudad, incluso fuera de la provincia. En la práctica se han presentado casos en este tipo de empresas, en donde un servicio técnico de “cableado estructurado” o instalación de un sistema de vigilancia mediante una “red de cámaras IP”, o una instalación y configuración de un “cyber”, han llevado varios días, lo que conlleva a realizar egresos extras por movilización, transporte, viáticos etc. Los mismos que es necesario que se controlen exactamente y se recuperen en la facturación final y total del servicio técnico realizado por el personal técnico de la empresa. De aquí en adelante llamaremos a esta aplicación Java, Sistema Integrado de Costeo de Servicios Técnicos “SICOSETEC”.
  • 5. 5 DESARROLLO Para el desarrollo de esta aplicación utilizaremos varias herramientas que vienen precargadas dentro de Java (Netbeans IDE 8.0.2), que es la plataforma informática o lenguaje de programación que usaremos para crear el programa SICOSETEC_2015 (Sistema Integrado de Costeo de Servicios Técnicos) aplicable a empresas dedicadas a brindar servicio de soporte técnico, mantenimiento y reparación de computadores, y venta de partes, piezas, accesorios y afines a su rama de negocio. Una vez creada la aplicación de consola en Java modo gráfico, con su respectivo “package” y seleccionada la consola Java Frame Form, iniciaremos la construcción de la aplicación. Plataforma informática / Lenguaje de Programación Java (Netbeans IDE 8.0.2). Es importante recalcar que todas las herramientas de este lenguaje en modo gráfico se pueden, personalizar o modificar a gusto del programador, utilizando el campo de “properties” “binding” “events” “code”, propiedades, unión, eventos, código, las mismas que son características aplicables a las herramientas, por ejemplo: “label”, “textfield”, “checkbutton”, “toogle button” etc, etc.
  • 6. 6 Herramientas Java (Modo Grafico) y sus propiedades. Posteriormente al diseño adecuado y óptimo de la aplicación, en modo gráfico se procede a modificar el texto y el nombre de la variable (variable name) de las herramientas utilizadas en la construcción del “frame”, para posterior realizar la escritura del código, que generará las acciones previstas del programa.
  • 7. 7 Java Frame Form (con herramientas personalizables)
  • 8. 8 Finalmente y realizando numerosas pruebas ediciones, modificaciones y comprobaciones de la compilación del código de cada una de las herramientas utilizadas en el frame, logramos obtener los eventos, acciones y cálculos previstos en la aplicación Formulario SICOSETEC. A continuación y como ilustración mostramos todo el código y las variables utilizadas en el desarrollo de la aplicación. DESARROLLO DEL CÓDIGO package pckSicosetec; import javax.swing.JOptionPane; public class Formulario_SICOSETEC extends javax.swing.JFrame { public Formulario_SICOSETEC() { initComponents(); } @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { buttonGroup1 = new javax.swing.ButtonGroup(); buttonGroup2 = new javax.swing.ButtonGroup(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); tbtManba = new javax.swing.JToggleButton(); tbtForccr = new javax.swing.JToggleButton();
  • 9. 9 tbtForcsr = new javax.swing.JToggleButton(); chbJefet = new javax.swing.JCheckBox(); chbAsist = new javax.swing.JCheckBox(); jLabel7 = new javax.swing.JLabel(); lblMantb = new javax.swing.JLabel(); lblFcr = new javax.swing.JLabel(); lblFsr = new javax.swing.JLabel(); jButton1 = new javax.swing.JButton(); jButton2 = new javax.swing.JButton(); jLabel11 = new javax.swing.JLabel(); lblResultado = new javax.swing.JLabel(); lblCargo = new javax.swing.JLabel(); jLabel9 = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); jLabel8 = new javax.swing.JLabel(); jLabel10 = new javax.swing.JLabel(); jLabel12 = new javax.swing.JLabel(); jLabel13 = new javax.swing.JLabel(); jLabel14 = new javax.swing.JLabel(); jLabel15 = new javax.swing.JLabel(); jLabel16 = new javax.swing.JLabel(); jLabel17 = new javax.swing.JLabel(); txtNom = new javax.swing.JTextField(); txtDir = new javax.swing.JTextField(); txtTelfs = new javax.swing.JTextField(); txtMail = new javax.swing.JTextField(); tbtGrab = new javax.swing.JToggleButton();
  • 10. 10 btnCont = new javax.swing.JButton(); jLabel18 = new javax.swing.JLabel(); txtCel = new javax.swing.JTextField(); jLabel19 = new javax.swing.JLabel(); txtCiud = new javax.swing.JTextField(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jLabel1.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N jLabel1.setForeground(new java.awt.Color(0, 51, 153)); jLabel1.setText(" S I C O S E T E C_2 0 1 5"); jLabel2.setForeground(new java.awt.Color(0, 0, 255)); jLabel2.setText("Costos de Servicios Técnicos"); jLabel3.setForeground(new java.awt.Color(0, 102, 204)); jLabel3.setText("Servicio en Oficina"); jLabel4.setForeground(new java.awt.Color(0, 102, 204)); jLabel4.setText("Servicio a Domicilio"); buttonGroup2.add(tbtManba); tbtManba.setForeground(new java.awt.Color(0, 102, 204)); tbtManba.setText("Mantenimiento Básico (PC/Laptop)"); buttonGroup2.add(tbtForccr);
  • 11. 11 tbtForccr.setForeground(new java.awt.Color(0, 102, 204)); tbtForccr.setText("Formateo Completo (con respaldos)"); buttonGroup2.add(tbtForcsr); tbtForcsr.setForeground(new java.awt.Color(0, 102, 204)); tbtForcsr.setText("Formateo Completo (sin respaldos)"); buttonGroup1.add(chbJefet); chbJefet.setForeground(new java.awt.Color(0, 102, 204)); chbJefet.setText(" Jefe Técnico"); buttonGroup1.add(chbAsist); chbAsist.setForeground(new java.awt.Color(0, 102, 204)); chbAsist.setText("Asistente Técnico"); jLabel7.setForeground(new java.awt.Color(0, 102, 204)); jLabel7.setText(" COSTO TOTAL SERVICIO TECNICO"); lblMantb.setForeground(new java.awt.Color(0, 102, 204)); lblMantb.setText("20"); lblFcr.setForeground(new java.awt.Color(0, 102, 204)); lblFcr.setText("30"); lblFsr.setForeground(new java.awt.Color(0, 102, 204)); lblFsr.setText("25");
  • 12. 12 jButton1.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N jButton1.setForeground(new java.awt.Color(0, 0, 153)); jButton1.setText("Calcular"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); jButton2.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N jButton2.setForeground(new java.awt.Color(0, 0, 153)); jButton2.setText("Salir"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton2ActionPerformed(evt); } }); jLabel11.setForeground(new java.awt.Color(0, 51, 153)); jLabel11.setText("( El recargo es:"); lblResultado.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N lblResultado.setForeground(new java.awt.Color(0, 0, 255)); lblResultado.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); lblCargo.setForeground(new java.awt.Color(0, 51, 153));
  • 13. 13 lblCargo.setText(" 5"); jLabel9.setForeground(new java.awt.Color(0, 51, 153)); jLabel9.setText(" (Más recargo por transporte y viáticos )"); jLabel6.setForeground(new java.awt.Color(0, 51, 153)); jLabel6.setText(" USD - Precios NO incluyen 12% IVA)"); jLabel8.setForeground(new java.awt.Color(0, 102, 204)); jLabel8.setText("USD"); jLabel10.setForeground(new java.awt.Color(0, 102, 204)); jLabel10.setText("USD"); jLabel12.setForeground(new java.awt.Color(0, 102, 204)); jLabel12.setText("USD"); jLabel13.setForeground(new java.awt.Color(0, 0, 255)); jLabel13.setText("Datos Personales del Cliente"); jLabel14.setForeground(new java.awt.Color(0, 102, 204)); jLabel14.setText("Nombres / Apellidos"); jLabel15.setForeground(new java.awt.Color(0, 102, 204)); jLabel15.setText("Dirección del Domicilio"); jLabel16.setForeground(new java.awt.Color(0, 102, 204));
  • 14. 14 jLabel16.setText("Teléfono Convencional"); jLabel17.setForeground(new java.awt.Color(0, 102, 204)); jLabel17.setText("Correo Electrónico"); txtNom.setForeground(new java.awt.Color(0, 0, 51)); txtDir.setForeground(new java.awt.Color(0, 0, 51)); txtTelfs.setForeground(new java.awt.Color(0, 0, 51)); txtMail.setForeground(new java.awt.Color(0, 0, 51)); tbtGrab.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N tbtGrab.setForeground(new java.awt.Color(0, 0, 153)); tbtGrab.setText("Grabar"); btnCont.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N btnCont.setForeground(new java.awt.Color(0, 0, 153)); btnCont.setText("Verificar Datos"); btnCont.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnContActionPerformed(evt); } }); jLabel18.setForeground(new java.awt.Color(0, 102, 204));
  • 15. 15 jLabel18.setText("Celular"); txtCel.setForeground(new java.awt.Color(0, 0, 51)); jLabel19.setForeground(new java.awt.Color(0, 102, 204)); jLabel19.setText("Ciudad de Residencia"); txtCiud.setForeground(new java.awt.Color(0, 0, 51)); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 184, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(327, 327, 327)) .addGroup(layout.createSequentialGroup() .addGap(108, 108, 108) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  • 16. 16 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR AILING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel17, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(txtMail, javax.swing.GroupLayout.PREFERRED_SIZE, 266, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel14, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 162, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel16, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 134, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(jLabel15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING, false)
  • 17. 17 .addComponent(txtDir) .addComponent(txtNom) .addGroup(layout.createSequentialGroup() .addComponent(txtTelfs, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(jLabel18, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(txtCel, javax.swing.GroupLayout.PREFERRED_SIZE, 106, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(txtCiud, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addGap(315, 315, 315)) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addComponent(lblResultado, javax.swing.GroupLayout.PREFERRED_SIZE, 275, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 223, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
  • 18. 18 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addComponent(chbJefet)) .addGroup(layout.createSequentialGroup() .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addComponent(chbAsist, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel11, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(lblCargo, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 221, javax.swing.GroupLayout.PREFERRED_SIZE))
  • 19. 19 .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 234, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR AILING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING, false) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addComponent(tbtForccr, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(tbtForcsr, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGap(33, 33, 33) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING, false) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addComponent(lblFsr)
  • 20. 20 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel12)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addComponent(lblFcr, javax.swing.GroupLayout.PREFERRED_SIZE, 16, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(jLabel10)))) .addGroup(layout.createSequentialGroup() .addComponent(tbtManba, javax.swing.GroupLayout.PREFERRED_SIZE, 240, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(31, 31, 31) .addComponent(lblMantb, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(jLabel8))) .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 240, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
  • 21. 21 .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(layout.createSequentialGroup() .addGap(0, 0, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TR AILING) .addComponent(btnCont, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(tbtGrab, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addComponent(jLabel13, javax.swing.GroupLayout.PREFERRED_SIZE, 178, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel19, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(0, 0, Short.MAX_VALUE))) .addGap(111, 111, 111)))) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap()
  • 22. 22 .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(4, 4, 4) .addComponent(jLabel13) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel14) .addComponent(txtNom, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel19) .addComponent(txtCiud, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(14, 14, 14) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel15) .addComponent(txtDir, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  • 23. 23 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel16) .addComponent(txtTelfs, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel18) .addComponent(txtCel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(txtMail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel17)) .addComponent(tbtGrab)) .addGap(18, 18, 18) .addComponent(btnCont) .addGap(11, 11, 11)
  • 24. 24 .addComponent(jLabel2) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel3) .addComponent(chbJefet)) .addGap(12, 12, 12) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel4) .addComponent(chbAsist) .addComponent(jLabel9)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel11) .addComponent(lblCargo, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel6)) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(tbtManba, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lblMantb)
  • 25. 25 .addComponent(jLabel8)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(tbtForccr, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lblFcr) .addComponent(jLabel10)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED ) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(tbtForcsr, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lblFsr) .addComponent(jLabel12) .addComponent(jButton1)) .addGap(30, 30, 30) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(jLabel7) .addComponent(jButton2)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED )
  • 26. 26 .addComponent(lblResultado, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(67, Short.MAX_VALUE)) ); pack(); }// </editor-fold> private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { dispose(); // TODO add your handling code here: } private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { double manten_bas=0; double forcomconres=0; double forcomsinres=0; double costoadi; double totalserv; double cargo=5; double iva; double sinrec; manten_bas = Double.parseDouble(lblMantb.getText()); forcomconres = Double.parseDouble(lblFcr.getText()); forcomsinres = Double.parseDouble(lblFsr.getText());
  • 27. 27 String mensaje= " "; if(chbJefet.isSelected()||chbAsist.isSelected()) { if (chbJefet.isSelected()) { if (tbtManba.isSelected()|| tbtForccr.isSelected() || tbtForcsr.isSelected()) { costoadi= 0; if (tbtManba.isSelected()) { costoadi = costoadi + manten_bas; } if (tbtForccr.isSelected()) { costoadi = costoadi + forcomconres; } if (tbtForcsr.isSelected()) { costoadi = costoadi + forcomsinres; }
  • 28. 28 iva= costoadi*0.12; costoadi = costoadi+iva; lblResultado.setText(" Valor a Cancelar " + costoadi + " USD Incluye 12% IVA"); JOptionPane.showMessageDialog(this, "No se recargó ningún valor adicional"); JOptionPane.showMessageDialog(this, "El valor a cancelar es: "+costoadi+" USD"); } else { JOptionPane.showMessageDialog(this, "Atención!n Ud no seleccionó ninguna opción n Por favor ingrese el tipo de servicio técnico que desea"); } } if (chbAsist.isSelected()) { costoadi= cargo; if (tbtManba.isSelected()|| tbtForccr.isSelected() || tbtForcsr.isSelected()) { if (tbtManba.isSelected()) {
  • 29. 29 costoadi = costoadi + manten_bas; } if (tbtForccr.isSelected()) { costoadi = costoadi + forcomconres; } if (tbtForcsr.isSelected()) { costoadi = costoadi + forcomsinres; } iva= costoadi*0.12; costoadi = costoadi+iva; lblResultado.setText(" Valor a Cancelar " + costoadi + " USD Incluye 12% IVA"); JOptionPane.showMessageDialog(this, " Se cargó 5 usd más por concepto de transporte"); JOptionPane.showMessageDialog(this, "El valor a cancelar es: "+costoadi+" USD"); } else { JOptionPane.showMessageDialog(this, "Atención!n Ud. no seleccionó ninguna opción n Por favor ingrese el tipo de servicio técnico que desea"); } } } else
  • 30. 30 { cargo=0; JOptionPane.showMessageDialog(this, "Atención!n Ud. no seleccionó ninguna opción n Por favor ingrese una opción"); } } private void btnContActionPerformed(java.awt.event.ActionEvent evt) { String Nombre; String Dire; String Telfs; String Mail; String Texto; String Ciudad; String Telf2; Nombre = (txtNom.getText()); Ciudad = (txtCiud.getText()); Dire = (txtDir.getText()); Telfs = (txtTelfs.getText()); Telf2 = (txtCel.getText()); Mail = (txtMail.getText()); if (tbtGrab.isSelected()) { Texto = Nombre;
  • 31. 31 Texto = Ciudad; Texto = Dire; Texto = Telfs; Texto = Telf2; Texto = Mail; } JOptionPane.showMessageDialog(this, "Datos del Cliente: n"+Nombre +"n"+Ciudad+"n"+Dire+"n"+Telfs+"n"+Telf2+"n"+Mail); // TODO add your handling code here: } /** * @param args the command line arguments */ public static void main(String args[]) { /* Set the Nimbus look and feel */ //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  • 32. 32 if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo g(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo g(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo g(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(Formulario_SICOSETEC.class.getName()).lo g(java.util.logging.Level.SEVERE, null, ex); } //</editor-fold> /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Formulario_SICOSETEC().setVisible(true); } });
  • 33. 33 } // Variables declaration - do not modify private javax.swing.JButton btnCont; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.ButtonGroup buttonGroup2; private javax.swing.JCheckBox chbAsist; private javax.swing.JCheckBox chbJefet; private javax.swing.JButton jButton1; private javax.swing.JButton jButton2; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel12; private javax.swing.JLabel jLabel13; private javax.swing.JLabel jLabel14; private javax.swing.JLabel jLabel15; private javax.swing.JLabel jLabel16; private javax.swing.JLabel jLabel17; private javax.swing.JLabel jLabel18; private javax.swing.JLabel jLabel19; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8;
  • 34. 34 private javax.swing.JLabel jLabel9; private javax.swing.JLabel lblCargo; private javax.swing.JLabel lblFcr; private javax.swing.JLabel lblFsr; private javax.swing.JLabel lblMantb; private javax.swing.JLabel lblResultado; private javax.swing.JToggleButton tbtForccr; private javax.swing.JToggleButton tbtForcsr; private javax.swing.JToggleButton tbtGrab; private javax.swing.JToggleButton tbtManba; private javax.swing.JTextField txtCel; private javax.swing.JTextField txtCiud; private javax.swing.JTextField txtDir; private javax.swing.JTextField txtMail; private javax.swing.JTextField txtNom; private javax.swing.JTextField txtTelfs; // End of variables declaration } USO DE LA APLICACIÓN SICOSETEC_2015 DETALLE 1) Ingresamos los Datos personales del Cliente. 2) Grabamos y Verificamos esta Información. 3) Seleccionamos la persona en cargada de realizar el Servicio Técnico y el sitio de trabajo. 4) Seleccionamos el tipo de Servicio Técnico(Costo precargados) 5) Verificamos si por el sitio de trabajo existe o no recargo adicional 6) Obtenemos el resultado del Costo (ya incluido el 12% IVA) 7) Salimos de la aplicación.
  • 35. 35 DESARROLLO DE LA APLICACIÓN “SICOSETEC_2015” TERMINADA COMPILACION
  • 36. 36