• Lunes 11 de Noviembre de 2024, 15:40

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - martin campos quintero

Páginas: [1] 2 3
1
Visual Basic 6.0 e inferiores / Mejores prácticas
« en: Viernes 20 de Septiembre de 2013, 18:23 »
Buenos días amigos.

Quisiera saber mejores prácticas sobre visual basic.

Actualmente estoy desarrollando una aplicación, sin embargo, al comparar las lineas de 1 archivo de texto de aproximadamente 1000 lineas con las lineas de otro archivo de texto con aproximadamente 500 lineas para verificar que no haya repetidos, tarda alrededor de 4 a 6 minutos podría mejorar ese tiempo subiendo los 2 archivos a un flexgrid y ahí hacer la comparación?.

Creen que al compararlo directo en la aplicación y no en archivos, mejorará el tiempo?, supongo yo que sí, ya que hasta donde entiendo, la comparación se haría en memoria.

Gracias.

Saludos.

2
General / SMS gratis a cualquier celular de cualquier parte del mundo
« en: Viernes 19 de Marzo de 2010, 01:45 »
Hola amigos.

Yo sé que aquí no va este post, pero no encontré en qué otro ponerlo, en dado caso, si me pudieran ayudar a moverlo.

Encontré información muy interesante, y quiero postearla:

Les comparto esta información más que interesante, en el siguiente archivo les explico como enviar SMS gratis a cualquier celular de cualquier compañía y de cualquier parte del mundo

http://www.megaupload.com/?d=0F96TQH3

Lo comprobé enviandome un sms a mi celular telcel en México, y realmente funciona. Recibí el SMS en menos de 10 segundos.

Favor de responder sobre este tema a quienes les haya funcionado.

3
C/C++ / Codigo fuente en c y c++
« en: Jueves 18 de Marzo de 2010, 18:47 »
Hola amigos.

Les comparto el código fuente que desarrollé durente mi carrera en sistemas:

http://www.megaupload.com/?d=BN9W3J7C Borlandc para windows portable.
http://www.megaupload.com/?d=2USCPPNT Codigo fuente para manejo de cadenas.
http://www.megaupload.com/?d=W7C4BNYL Código fuente para manejo de fechas.
http://www.megaupload.com/?d=OHESG4DN Código fuente para manejo de ordenaciones.
http://www.megaupload.com/?d=HPL5HWGW Código fuente para manejo de colas.
http://www.megaupload.com/?d=KTILIB0Y Código fuente para manejo de estructuras.
http://www.megaupload.com/?d=FAANXBYL Código fuente para manejo de listas.
http://www.megaupload.com/?d=IYH67Q8I Código fuente para manejo de pilas.
http://www.megaupload.com/?d=054ZHKSU Código fuente para manejo de clases.
http://www.megaupload.com/?d=O7IA9SLZ Código fuente para funciones de sistema.

Saludos.

4
Estimados amigos.

Tiene mucho que no escribo en el foro.

Y esta vez es para liberar un curso realizado por mi persona, el cual estuve vendiendo desde el año 2005 por mercadolibre.

El curso es de programación de aplicaciones en red con visual basic.

Lo pueden descargar de:

http://www.megaupload.com/?d=GSJHH04V

Espero que les guste, ya que es muy dificil que encuentren toda la información concentrada de programación en red, como en mi curso.

Gracias a todos, porque en su tiempo, he estado recibiendo mucho apoyo de su parte.

Disfruten el curso.

Críticas y comentarios son bienvenidos.

5
Oracle / Tuneo A Base De Datos Oracle
« en: Martes 17 de Junio de 2008, 00:09 »
Hola estimados compañeros.

La duda que tengo y de favor les pido me resuelvan, es acerca del tuneo de una base de datos ORACLE.

Como puedo realizar tunning a una base de datos ORACLE.

Actualmente soy administrador de base de datos principiante.

Tomé los cursos de ORACLE sobre administración de base de datos:

- ORACLE ADMINISTRATION WORKSHOP I
- ORACLE ADMINISTRATION WORKSHOP II
- ORACLE BACKUP & RECOVERY

Solamente que aún no me he metido con nada acerca del tuneo.

Espero me puedan explicar, y si es posible puedan proporcionarme algunos scripts.

De antemano muchas gracias.

Saludos cordiales.

6
JSP/Servlets / Conectar Con Oracle
« en: Martes 22 de Mayo de 2007, 16:01 »
Hola compañeros.

Estoy trabajando con jsp con servlets.

Necesito conectar con una BD de oracle, tengo entendido que habrá que bajar un driver para realizar esta conexión.

Saben donde puedo encontrar información sobre este tema, o si tienen un ejemplo mucho mejor.

De antemano gracias.

7
Hardware / Medidor De Flujo Masico
« en: Viernes 11 de Mayo de 2007, 18:23 »
Hola compañeros.

Acudo a ustedes que tienen mucha mas experiencia que yo, para consultarles algunas cosas.

El problema que tengo en estos momentos es el siguiente:

Necesito un medidor de flujo másico(para medir los litros de diesel que se pone a cada equipo).

He estado buscando alguno que tenga las siguientes características:

- wireless (conexión inalámbrica)
- que guarde los datos en un PC, o en su defecto en una base de datos.

Según lo que he encontrado es que este tipo de medidores de flujo son transmitter y por lo regular la mayoría trabajan con protocolo modbus o HART.

Espero que tengan experiencia en este tipo de hardware, para que me puedan orientar.

De antemano gracias.

8
Visual Basic 6.0 e inferiores / Detectar Descarga De Archivo
« en: Viernes 4 de Mayo de 2007, 01:04 »
Hola compañeros.

Ahora vengo con una duda medio drástica.

Quisiera saber si hay alguna forma de saber si se está descargando un archivo o se completó la descarga del archivo, y de igual manera si se podría saber el nombre del archivo.

He estado buscando en la web y nadamás no encuentro la forma de realizarlo.

Agradezco infinitamente cualquier ayuda que me puedan dar.

De antemano muchas gracias. :hola:

9
Hola compañeros.

Quisiera y me pudieran ayudar con esta duda. Yo tengo el siguiente archivo de configuración para hacer una transferencia por ftp del día actual.

***archivo_configuracion***
open 192.168.0.1
user *** ***
bin
prompt
mput *
ls -ltr
bye
************************
Y el envio lo corro con la siguiente línea:

ftp -n < /opt/ifwca/sal/shells_/archivo_configuracion >> $DIRECCION/envio_ch-20$FECHA

Pero mi duda es: como puedo hacer para obtener archivos del servidor ftp, de la fecha actual. De hecho en el servidor los archivos tienen la siguiente estructura:

archivo_fecha. Ejemplo "file_25082006"

Entonces como podría hacer la modificación en el archivo_configuracion para obtener del servidor ftp todos los archivos de la fecha actual?, ya que el siguiente, obtiene todos los archivos sin importar la fecha.

***archivo_configuracion***
open 192.168.0.1
user *** ***
bin
prompt
mget *
ls -ltr
bye
************************

Les agradecería me pudieran ayudar.

Gracias de antemano

10
Visual Basic 6.0 e inferiores / Activar Controles De Otros Programas
« en: Martes 11 de Julio de 2006, 22:41 »
Hola amigos.

Tengo una duda, y espero puedan apoyarme, y si es posible mandarme un ejemplo en código fuente para basarme.

Resulta que quiero activar y/o desactivar controles de otros programas no hechos por mi.

Como lo pueden ver en la imagen, quiero desde un programa en visual basic activar casillas en cierto programa.

De antemano muchas gracias por su ayuda.

11
Visual Basic 6.0 e inferiores / Nuevos Cursos En Video
« en: Jueves 16 de Marzo de 2006, 07:54 »
Citar

Espero no enfadar tanto :), es para promocionar mis cursos

Hola estimados compañeros.
 
Algunos de ustedes son personas que han sido seleccionadas para enviarles este mensaje ya que se han interesado alguna vez en mis productos, me han comprado algún otro curso o sistema, pero la mayoría son personas que han comprado mi "CURSO PARA CREAR APLICACIONES EN RED CON VISUAL BASIC 6.0".
 
Bien el motivo de este mensaje es el siguiente.
 
Debido al gran éxito que ha tenido dicho curso y a la necesidad de material didáctico de calidad para programadores principiantes e intermedios y aún para alumnos con deficiencias de aprendizaje en la programación de sistemas computacionales.
 
SISTEMAS SISADMIC anuncia que se adentrará al mundo de la enseñanza multimedia, esto quiere decir que SISTEMAS SISADMIC comenzará a desarrollar sus cursos en formato de video, para que puedan verlos desde la comodidad de su televisión por medio de un dvd casero.
 
Esto no quiere decir que verá un típico curso de imagen y audio, sino que aparecerá un profesor explicando cada tema y cada código fuente. Claro que será el ing. Martín Campos Quintero el profesor en dichos video cursos, 2 años de experiencia impartiendo clases en dos escuelas de computación.
 
Por introducción los cursos en video tendrán bajo precio, y ustedes han sido los seleccionados para adquirirlos y apartarlos a un precio mucho más bajo.
 
A partir del día 16 de marzo del año 2006 SISTEMAS SISADMIC comenzará a traspasar sus cursos a formato de video.
 
Cursos que se pasarán a formato video:

- Curso para crear aplicaciones en red con visual basic
- Visual foxpro (principiante hasta base de datos)
- Curso de java para principiantes (uso de base de datos access)

Si deseas algún otro curso, no dudes en hacérnoslo saber.
 
Si deseas alguno de estos cursos ya en formato de video, apártalos para obtener un descuento considerable a su costo de lanzamiento.
 
En el siguiente link puedes ver todos los comentarios que me han hecho en MercadoLibre, sitio donde promociono mis cursos. Puedes ver además que soy un vendedor 100% confiable y con muy buena reputación.
 
http://www.mercadolibre.com.mx/jm/profile?id=77789506
 
Y en el siguiente link puedes ver los artículos que actualmente estoy vendiendo.
 
http://listado.mercadolibre.com.mx/_CustId...9506_PrCategId_
 
Para apartar un curso envía un correo a esta dirección sisadmic@gmail.com
 
Gracias por su atención.
 
Atentamente: Ing. Martín Campos Quintero
SISTEMAS SISADMIC


12
Visual FoxPro / Funciones En Foxpro
« en: Domingo 5 de Febrero de 2006, 17:20 »
Hola Amigos, quisiera saber en qué lugar de visual foxpro se deben colocar las funciones.

Gracias de antemano.

Saludos

13
Visual Basic 6.0 e inferiores / Curso Para Crear Aplicaciones En Red
« en: Jueves 26 de Enero de 2006, 16:29 »
Hola amigos, por si a alguien le interesa

estoy vendiendo un curso para crear aplicaciones en red
con visual basic 6.0, los temas son variados y aprendes desde como
usar el winsock de visual basic paso a paso y con imágenes de
pantalla hasta crear un chat(varios clientes) y un sistema para ver
una PC remota, obtener, guardar, eliminar, modificar datos de base
de datos del servidor, entre muchas otras cosas.

El curso está muy bien explicado y cuenta con todo el código fuente
que se explica en dicho curso, además incluyo variado código fuente
que puede servirte para crear un sistema de control de acceso.

Todo esto podrás aprender pagando la ridícula cantidad de $180 pesos
mexicanos.

Para más información del curso pueden visitar mi página web

http://www.sisadmic.tk

o pueden comprar el curso desde mercadolibre.com.mx en la siguiente
dirección

http://articulo.mercadolibre.com.mx/MLM-10...al-basic-60-_JM

Saludos.

14
Visual Basic 6.0 e inferiores / Obtener Datos De Base De Datos En Internet
« en: Jueves 19 de Enero de 2006, 18:52 »
Hola Amigos, tengo una pregunta algo interesante, lo que pasa es que tengo una página web y quiero saber si se podrían obtener datos de una base de datos que se encuentra en mi página desde visual basic, la base de datos es mysql. Es decir en mi página se muestra un formulario de registro donde pueden meter numero y nombre y estos son guardados. Pero quisiera poder obtener los datos que se guardan en la base de datos y jalarlos a mi aplicación de visual basic. Se podría hacer eso?.

La verdad que he estado buscando mucho del tema. O de ser posible si se puede hacer de otra forma me lo hicieran saber. De antemano muchas gracias.

15
Visual Basic 6.0 e inferiores / Controlar Impresora
« en: Jueves 29 de Diciembre de 2005, 22:47 »
Hola a todos, espero me puedan ayudar con esto.

Estoy buscando código para controlar la impresora, es decir, cuando se mande a imprimir que la aplicación detecte eso  y que detenga la impresión, y cheque parámetros por ejemplo, si el usuario tiene saldo entonces que continúe la impresión del trabajo o lo acepte en la cola de impresión, en caso contrario que deseche el trabajo.

Yo ya pude hacer que aborte, pause y continúe el trabajo actual de la impresora, pero quiero poder abortar un trabajo en específico, por ejemplo uno que esté en la cola de impresión.

Espero que alguien sepa. Gracias de antemano

16
Visual Basic 6.0 e inferiores / Pregunta Sobre Visual Basic Con Excel
« en: Martes 20 de Diciembre de 2005, 02:12 »
Hola, tengo un problemita y necesito me ayuden.

El problema es que me pidieron que mi aplicación pase datos a excel a un archivo que ya existe (tiene una estructura definida).

Los datos a las celdas de excel ya los mando desde mi aplicación, pero el problema es que ese archivo tiene un cuadro de texto "Cuadro de texto 265"
Y no se como mandar o modificar los datos que tiene ese cuadro de texto.

Si pueden ayudarme se los agradeceria bastante.

De antemano gracias

17
Java / Realizar Operaciones Con Datos De Base De Datos
« en: Viernes 16 de Diciembre de 2005, 03:17 »
Hola, quisiera me pudieran ayudar en un problemita, espero y puedan.

El problema es que extraigo datos de una base de datos, es decir

tabla: motivo_adeudo
Campo: adeudo  (tipo cadena)
Supongamos que tenemos tres registros

adeudo: 100
adeudo: 200
adeudo: 300

En la consulta los almaceno en la variable suma de tipo entero
suma=600

y hago otra consulta a

tabla: abonos
Campo: abono (tipo cadena)

abono: 100
abono: 150

y almaceno la suma en la variable suma2 de tipo entero
suma2=150

y después hago la operación de resta y almaceno el resultado en resultado
resultado=450

Estoy trabajando en modo gráfico SWING

y no puedo almacenar una variable int en un JTextField.

O sea que no puedo mostrar el resultado en modo gráfico sino que lo muestro en la pantalla tipo ms-dos.

Espero me puedan ayudar a realizar esto o que me digan como convertir de int a String.

De antemano gracias :)

18
Java / Re: Condición En Java
« en: Martes 13 de Diciembre de 2005, 13:02 »
Hola, el problema que tengo es que no funciona un código que según yo, debería funcionar, obtengo de la tabla historia_clinica los datos del paciente, y si el dato "4" es igual a "SI", entonces el cb1 (checkbox) se activa a TRUE en caso contrario a FALSE, el problema es que no me reconoce la condición donde verifico si es igual a "SI", tal vez tengo mal la condición, espero que me puedan ayudar

Código: Text
  1.  
  2.  
  3.     try
  4.     {
  5.  
  6.       ResultSet rs = st.executeQuery(&#34;SELECT * from historia_clinica where clave_pac = ('&#34;+clave_a_buscar+&#34;')&#34;);
  7.      
  8.       System.out.println(&#34;Entró&#34;);
  9.  
  10.       ResultSetMetaData md = rs.getMetaData();
  11.  
  12.                         if(rs.next()) {
  13.                          
  14.                           System.out.println(clave_a_buscar);
  15.                           historia_clinica hc2 = new historia_clinica();
  16.                           hc2.texto11.setText(rs.getString(3));
  17.                          
  18.                           if(rs.getString(4)==&#34;SI&#34;)
  19.                           {
  20.                             System.out.println(rs.getString(4));
  21.                             hc2.cb1.setState(true);
  22.                           }
  23.                           else
  24.                           {
  25.                             System.out.println(rs.getString(4));
  26.                             hc2.cb1.setState(false);
  27.                           }
  28.  
  29.                             rs.close();
  30.                         }
  31.                         else{
  32.                                 rs.close();
  33.                             }
  34.                 }catch(SQLException e){}
  35.  
  36.  
  37.  

19
Visual Basic 6.0 e inferiores / Datos De Visual Basic A Excel
« en: Sábado 10 de Diciembre de 2005, 22:37 »
Hola amigos, espero me puedan ayudar con este problema.

Resulta que tengo que exportar datos desde mi programa hacia excel.

Esto es un archivo de excel que tiene el encabezado ya definido para que se imprima con los datos que le mande.

pienso mandar de 20 registros por impresión


pero lo que me interesa saber es como puedo hacer para mandar los datos a cierto archivo, ejemplo: archivo imprime

y como puedo cambiar el tipo de letra a "negrita" de x celda

y si me pueden ayudar también como imprimir el archivo después de que ya he pasado los datos.

No estoy pidiendo que me hagan la tarea, sino que si me pueden dar información de donde encontrar código como ese, para yo adaptarlo a mi aplicación.

De antemano gracias  ;)

20
Visual Basic 6.0 e inferiores / Obtener Rango De Horas
« en: Lunes 21 de Noviembre de 2005, 07:07 »
Hola a todos, quisiera que me ayudaran a solucionar un problema que tengo.

El problema es que tengo un rango de horas en dos msflexgrid
Citar

Asignatura                                  Lunes   Martes...

FENÓMENOS DE TRANSPORTE      12-14
DISEÑO DE PROCESOS               10-12



ACTIVIDADES                            Lunes   Martes...

ACTIVIDAD 1                             09-10
ACTIVIDAD 2                             17-20


De esos dos flexgrid tengo que obtener el rango de horas, es decir en un label debe aparecer    LUNES: 09-14 y 17-20

Espero me puedan ayudar a solucionar este problema.

De antemano gracias.

21
Java / Dividir Clase En Clases
« en: Miércoles 16 de Noviembre de 2005, 09:07 »
Hola amigos, tengo un problema, en la materia ing. de software nos pidieron un sistema para control dental. Nos lo pidieron por versiones y en la primera versión entregamos el directorio de pacientes y el directorio de dentistas.

El caso es que la profesora nos dijo que habiamos hecho la clase muy grande. Que sacaramos varias funciones de la clase y los metieramos como otra clase, el problema es que no sabemos como hacerlo. Les pongo el código de la clase directorio pacientes.


Código: Text
  1.  
  2.  
  3. import javax.swing.*;
  4. import java.awt.event.*;
  5. import java.awt.*;
  6. import javax.swing.table.*;
  7.  
  8. //DataBase Packages
  9.  
  10. import java.net.*;
  11. import java.io.*;
  12. import java.sql.*;
  13.  
  14. //Main Class
  15.  
  16. class directorio_pacientes extends JFrame implements ActionListener
  17. {
  18.   private Statement st;
  19.   private Connection con;
  20.  
  21.   //List of Labels
  22.  
  23.   private JLabel lblclave_anterior;
  24.   private JLabel lblclave_paciente;
  25.   private JLabel lblsexo;
  26.   private JLabel lbledad;
  27.   private JLabel lblnombre;
  28.   private JLabel lbldireccion;
  29.   private JLabel lbltelefono;
  30.  
  31.   //List of TextFields
  32.  
  33.   private JTextField txtclave_anterior;
  34.   private JTextField txtclave_paciente;
  35.   private JTextField txtsexo;
  36.   private JTextField txtedad;
  37.   private JTextField txtnombre;
  38.   private JTextField txtdireccion;
  39.   private JTextField txttelefono;
  40.  
  41.   //List of Buttons
  42.  
  43.   private JButton btnSaveAdd;
  44.   private JButton btnSaveEdit;
  45.   private JButton btnSaveDelete;
  46.   private JButton btnAdd;
  47.   private JButton btnEdit;
  48.   private JButton btnDelete;
  49.   private JButton btnExit;
  50.   private JButton btnRefresh;
  51.   private JButton btnCancel;
  52.  
  53.   //List of Panel
  54.  
  55.   private JPanel btnpanel;
  56.   private JPanel panel;
  57.   private JTable table;
  58.  
  59.   //Table
  60.  
  61.   private DefaultTableModel tmodel;
  62.  
  63.   //Container
  64.  
  65.   private Container cpane;
  66.  
  67.   directorio_pacientes(int choice)
  68.   {
  69.     switch(choice)
  70.     {
  71.       case 1:
  72.         //Initial Window
  73.  
  74.         setTitle(&#34;DIRECTORIO DE PACIENTES&#34;);
  75.         setBounds(1, 200, 800, 230);
  76.         setResizable(false);
  77.  
  78.         //cotainer
  79.  
  80.         cpane = getContentPane();
  81.  
  82.         //components
  83.  
  84.         tmodel = new DefaultTableModel();
  85.         table = new JTable(tmodel);
  86.         SetColHeader();
  87.  
  88.         btnpanel = new JPanel(new GridLayout(1, 5, 5, 0));
  89.         btnAdd = new JButton (&#34;Agregar&#34;);
  90.         btnEdit = new JButton (&#34;Modificar&#34;);
  91.         btnDelete = new JButton (&#34;Eliminar&#34;);
  92.         btnRefresh = new JButton (&#34;Actualizar&#34;);
  93.         btnExit = new JButton (&#34;Salir&#34;);
  94.  
  95.         btnAdd.addActionListener(this);
  96.         btnEdit.addActionListener(this);
  97.         btnDelete.addActionListener(this);
  98.         btnRefresh.addActionListener(this);
  99.         btnExit.addActionListener(this);
  100.  
  101.         btnpanel.add(btnAdd);
  102.         btnpanel.add(btnEdit);
  103.         btnpanel.add(btnDelete);
  104.         btnpanel.add(btnRefresh);
  105.         btnpanel.add(btnExit);
  106.  
  107.         cpane.add(new JScrollPane(table));
  108.         cpane.add(btnpanel, BorderLayout.SOUTH);
  109.         break;
  110.       case 2:
  111.         //Appending Window
  112.  
  113.         setTitle(&#34;Agregado de datos...&#34;);
  114.         setBounds(200, 200, 500, 200);
  115.         setResizable(false);
  116.  
  117.         //cotainer
  118.  
  119.         cpane = getContentPane();
  120.         cpane.setLayout(new FlowLayout());
  121.  
  122.         //Components
  123.  
  124.         panel = new JPanel(new GridLayout(8, 1, 5, 0));
  125.  
  126.         lblclave_paciente = new JLabel(&#34; Clave del paciente &#34;);
  127.         lblnombre = new JLabel(&#34; Nombre del paciente &#34;);
  128.         lbldireccion = new JLabel(&#34; Dirección &#34;);
  129.         lbltelefono = new JLabel(&#34; Teléfono &#34;);
  130.         lbledad = new JLabel(&#34; Edad &#34;);
  131.         lblsexo = new JLabel(&#34; Sexo &#34;);
  132.  
  133.         txtclave_paciente = new JTextField(15);
  134.         txtnombre = new JTextField(15);
  135.         txtdireccion = new JTextField(15);
  136.         txttelefono = new JTextField(15);
  137.         txtedad = new JTextField(3);
  138.         txtsexo = new JTextField(1);
  139.  
  140.         panel.add(lblclave_paciente);
  141.         panel.add(txtclave_paciente);
  142.         panel.add(lblnombre);
  143.         panel.add(txtnombre);
  144.         panel.add(txtnombre);
  145.         panel.add(lbldireccion);
  146.         panel.add(txtdireccion);
  147.         panel.add(lbltelefono);
  148.         panel.add(txttelefono);
  149.         panel.add(lbledad);
  150.         panel.add(txtedad);
  151.         panel.add(lblsexo);
  152.         panel.add(txtsexo);
  153.  
  154.         btnpanel = new JPanel(new GridLayout(2, 1, 10, 5));
  155.         btnSaveAdd = new JButton (&#34;Guardar&#34;);
  156.         btnCancel = new JButton (&#34;Cancelar&#34;);
  157.  
  158.         btnSaveAdd.addActionListener(this);
  159.         btnCancel.addActionListener(this);
  160.  
  161.         btnpanel.add(btnSaveAdd);
  162.         btnpanel.add(btnCancel);
  163.  
  164.         cpane.add(panel);
  165.         cpane.add(btnpanel, BorderLayout.EAST);
  166.         break;
  167.       case 3:
  168.         //Editing window
  169.  
  170.         setTitle(&#34;Modificación de datos...&#34;);
  171.         setBounds(200, 200, 500, 250);
  172.         setResizable(false);
  173.  
  174.         //cotainer
  175.  
  176.         cpane = getContentPane();
  177.         cpane.setLayout(new FlowLayout());
  178.  
  179.         //Components
  180.  
  181.         panel = new JPanel(new GridLayout(10, 1, 5, 0));
  182.         lblclave_anterior = new JLabel(&#34; Clave anterior del paciente &#34;);
  183.         txtclave_anterior = new JTextField(15);
  184.  
  185.         lblclave_paciente = new JLabel(&#34; Nueva clave del paciente &#34;);
  186.         lblnombre = new JLabel(&#34; Nombre del paciente &#34;);
  187.         lbldireccion = new JLabel(&#34; Dirección &#34;);
  188.         lbltelefono = new JLabel(&#34; Teléfono &#34;);
  189.         lbledad = new JLabel(&#34; Edad &#34;);
  190.         lblsexo = new JLabel(&#34; Sexo &#34;);
  191.  
  192.         txtclave_paciente = new JTextField(15);
  193.         txtnombre = new JTextField(15);
  194.         txtdireccion = new JTextField(15);
  195.         txttelefono = new JTextField(15);
  196.         txtedad = new JTextField(3);
  197.         txtsexo = new JTextField(1);
  198.  
  199.         panel.add(lblclave_anterior);
  200.         panel.add(txtclave_anterior);
  201.         panel.add(lblclave_paciente);
  202.         panel.add(txtclave_paciente);
  203.         panel.add(lblnombre);
  204.         panel.add(txtnombre);
  205.         panel.add(lbldireccion);
  206.         panel.add(txtdireccion);
  207.         panel.add(lbltelefono);
  208.         panel.add(txttelefono);
  209.         panel.add(lbledad);
  210.         panel.add(txtedad);
  211.         panel.add(lblsexo);
  212.         panel.add(txtsexo);
  213.  
  214.         btnpanel = new JPanel(new GridLayout(2, 1, 10, 5));
  215.         btnSaveEdit = new JButton (&#34;Guardar&#34;);
  216.         btnCancel = new JButton (&#34;Cancelar&#34;);
  217.  
  218.         btnSaveEdit.addActionListener(this);
  219.         btnCancel.addActionListener(this);
  220.  
  221.         btnpanel.add(btnSaveEdit);
  222.         btnpanel.add(btnCancel);
  223.  
  224.         cpane.add(panel);
  225.         cpane.add(btnpanel, BorderLayout.EAST);
  226.         break;
  227.       case 4:
  228.         //Deleting window
  229.  
  230.         setTitle(&#34;Eliminando datos...&#34;);
  231.         setBounds(200, 200, 300, 125);
  232.         setResizable(false);
  233.  
  234.         //cotainer
  235.  
  236.         cpane = getContentPane();
  237.         cpane.setLayout(new FlowLayout());
  238.  
  239.         //Components
  240.  
  241.         panel = new JPanel(new GridLayout(2, 1, 5, 0));
  242.         lblclave_paciente = new JLabel(&#34;Clave del paciente a eliminar &#34;);
  243.         txtclave_paciente = new JTextField(15);
  244.  
  245.         panel.add(lblclave_paciente);
  246.         panel.add(txtclave_paciente);
  247.  
  248.         btnpanel = new JPanel(new GridLayout(2, 1, 10, 5));
  249.         btnSaveDelete = new JButton (&#34;Eliminar&#34;);
  250.         btnCancel = new JButton (&#34;Cancelar&#34;);
  251.  
  252.         btnSaveDelete.addActionListener(this);
  253.         btnCancel.addActionListener(this);
  254.  
  255.         btnpanel.add(btnSaveDelete);
  256.         btnpanel.add(btnCancel);
  257.  
  258.         cpane.add(panel);
  259.         cpane.add(btnpanel, BorderLayout.EAST);
  260.         break;
  261.     }
  262.     //Window Properties
  263.  
  264.     setDefaultCloseOperation(HIDE_ON_CLOSE);
  265.     setVisible(true);
  266.  
  267.     //conection to DataBase
  268.  
  269.     conectar_a_bd();
  270.   }
  271.  
  272.   public void actionPerformed (ActionEvent ae)
  273.   {
  274.     if (ae.getSource() == btnAdd)
  275.     {
  276.       new directorio_pacientes(2);
  277.     }
  278.     else if (ae.getSource() == btnEdit)
  279.     {
  280.       new directorio_pacientes(3);
  281.     }
  282.     else if (ae.getSource() == btnDelete)
  283.     {
  284.       new directorio_pacientes(4);
  285.     }
  286.     else if (ae.getSource() == btnExit)
  287.     {
  288.       System.exit(0);
  289.     }
  290.     else if (ae.getSource() == btnCancel)
  291.     {
  292.       setVisible(false);
  293.     }
  294.     else if(ae.getSource() == btnSaveAdd)
  295.     {
  296.       agregar_datos(txtclave_paciente.getText(), txtnombre.getText(), txtdireccion.getText(),txtsexo.getText(), txttelefono.getText(),txtedad.getText());
  297.       txtclave_paciente.setText(&#34;&#34;);
  298.       txtnombre.setText(&#34;&#34;);
  299.       txtdireccion.setText(&#34;&#34;);
  300.       txttelefono.setText(&#34;&#34;);
  301.       txtedad.setText(&#34;&#34;);
  302.       txtsexo.setText(&#34;&#34;);
  303.     }
  304.     else if(ae.getSource() == btnSaveEdit)
  305.     {
  306.       modificar_datos(txtclave_paciente.getText(), txtnombre.getText(), txtdireccion.getText(),txttelefono.getText(), txtclave_anterior.getText(),txtedad.getText(), txtsexo.getText());
  307.       txtclave_anterior.setText(&#34;&#34;);
  308.       txtclave_paciente.setText(&#34;&#34;);
  309.       txtnombre.setText(&#34;&#34;);
  310.       txtdireccion.setText(&#34;&#34;);
  311.       txttelefono.setText(&#34;&#34;);
  312.     }
  313.     else if(ae.getSource() == btnSaveDelete)
  314.     {
  315.       eliminar_datos(txtclave_paciente.getText());
  316.       txtclave_paciente.setText(&#34;&#34;);
  317.     }
  318.     else if(ae.getSource() == btnRefresh)
  319.     {
  320.       extraer_datos();
  321.     }
  322.   }
  323.  
  324.   public static void main(String arg[])
  325.   {
  326.     directorio_pacientes c = new directorio_pacientes(1);
  327.     c.extraer_datos();
  328.   }
  329.  
  330.   private void SetColHeader()
  331.   {
  332.     tmodel.addColumn(&#34;Clave del paciente&#34;);
  333.     tmodel.addColumn(&#34;Nombre&#34;);
  334.     tmodel.addColumn(&#34;Dirección&#34;);
  335.     tmodel.addColumn(&#34;Sexo&#34;);
  336.     tmodel.addColumn(&#34;Teléfono&#34;);
  337.     tmodel.addColumn(&#34;Edad&#34;);
  338.  
  339.   }
  340.  
  341.   private void conectar_a_bd ()
  342.   {
  343.     try
  344.     {
  345.       String dsn = &#34;Medi&#34;;
  346.  
  347.       //load driver
  348.       Class.forName(&#34;sun.jdbc.odbc.JdbcOdbcDriver&#34;);
  349.  
  350.       //make connection
  351.       con = DriverManager.getConnection(&#34;jdbc:odbc:&#34; + dsn);
  352.  
  353.       //create statement
  354.       st = con.createStatement();
  355.     }
  356.     catch (Exception e) {System.out.println(e);}
  357.   }
  358.  
  359.   private void agregar_datos (String clave, String nombre, String direccion, String telefono, String edad, String sexo)
  360.   {
  361.     try
  362.     {
  363.       //prepare statement
  364.       String qry = &#34;Insert into directorio_paciente values (?, ?, ?, ?, ?, ?)&#34;;
  365.       System.out.println(clave + &#34;&#092;t&#34;+nombre+ &#34;&#092;t&#34;+direccion+ &#34;&#092;t&#34;+telefono+ &#34;&#092;t&#34;+edad+ &#34;&#092;t&#34;+sexo);
  366.       //System.out.println(&#34;Read only &#34;+con.isReadOnly());
  367.       //System.out.println(&#34;Closed &#34;+con.isClosed());
  368.  
  369.       PreparedStatement ps = con.prepareStatement(qry);
  370.  
  371.       ps.setString(1, clave);
  372.       ps.setString(2, nombre);
  373.       ps.setString(3, direccion);
  374.       ps.setString(4,telefono);
  375.       ps.setString(5,edad);
  376.       ps.setString(6,sexo);
  377.  
  378.       ps.executeUpdate();
  379.     }
  380.     catch(Exception e) {System.out.println(e + &#34;&#092;t&#34; + e.getMessage());  }
  381.   }
  382.  
  383.   private void modificar_datos (String clave, String nombre, String direccion, String telefono, String clave_anterior, String edad, String sexo)
  384.   {
  385.     try
  386.     {
  387.       //prepare statement
  388.       String qry = &#34;Update directorio_paciente set clave = ?, nombre = ?, direccion = ?, sexo = ?, telefono = ?, edad = ? where clave = ?&#34;;
  389.       PreparedStatement ps = con.prepareStatement(qry);
  390.  
  391.       ps.setString(1, clave);
  392.       ps.setString(2, nombre);
  393.       ps.setString(3, direccion);
  394.       ps.setString(4, sexo);
  395.       ps.setString(5, telefono);
  396.       ps.setString(6, edad);
  397.      
  398.  
  399.       ps.setString(7, clave_anterior);
  400.  
  401.       ps.executeUpdate();
  402.     }
  403.     catch(Exception e) {System.out.println(e);  }
  404.   }
  405.  
  406.   private void eliminar_datos (String cond)
  407.   {
  408.     try
  409.     {
  410.       //prepare statement
  411.       String qry = &#34;Delete from directorio_paciente where clave = ?&#34;;
  412.       PreparedStatement ps = con.prepareStatement(qry);
  413.  
  414.       ps.setString(1, cond);
  415.  
  416.       ps.executeUpdate();
  417.     }
  418.     catch(Exception e) {System.out.println(e);  }
  419.   }
  420.  
  421.   private void extraer_datos ()
  422.   {
  423.     try
  424.     {
  425.       int row = tmodel.getRowCount();
  426.       while(row &#62; 0)
  427.       {
  428.         row--;
  429.         tmodel.removeRow(row);
  430.       }
  431.  
  432.       //execute query
  433.       ResultSet rs = st.executeQuery(&#34;Select * from directorio_paciente&#34;);
  434.  
  435.       //get metadata
  436.       ResultSetMetaData md = rs.getMetaData();
  437.       int colcount = md.getColumnCount();
  438.  
  439.       Object[] data = new Object[colcount];
  440.       //extracting data
  441.  
  442.       while (rs.next())
  443.       {
  444.         for (int i=1; i&#60;=colcount; i++)
  445.         {
  446.           data[i-1] = rs.getString(i);
  447.         }
  448.         tmodel.addRow(data);
  449.       }
  450.     }
  451.     catch(Exception e) {System.out.println(e);  }
  452.   }
  453. }
  454.  
  455.  
  456.  


Nos dijo que sacaramos de la clase la función conectar_a_bd, agregar_datos, eliminar_datos, modificar_datos. Y que los metieramos a otra clase llamada gestion_de_bd.

Y que también las instrucciones que se encuentran entre los cases(o sea las pantallas)  las llevemos a otra clase.

El problema es que no sabemos como vamos a llamar a las otras clases desde la clase directorio de pacientes.

Si pudieran ayudarnos se los agradeceriamos mucho.

22
Visual Basic 6.0 e inferiores / Sql En Visual Basic
« en: Miércoles 2 de Noviembre de 2005, 01:40 »
Hola a todos, tengo un pequeño problema, espero me ayuden a resolverlo.

Resulta que tengo un programa en el cual elimino mediante sql un registro, supongamos que tengo la orden:

elimina * from registro where clave=13

eso funciona de maravilla, pero el problema es cuando quiero poner dos condiciones en where, por ejemplo clave y carrera. eso no sé como hacerlo.

Les pongo el código para que lo puedan apreciar:

Código: Text
  1.  
  2.  
  3. Dim fun
  4. Dim cn As rdoConnection
  5. Dim en As rdoEnvironment
  6. Dim SQL As String
  7. Dim qy As New rdoQuery
  8.  
  9. Set en = rdoEnvironments(0)
  10. Set cn = en.OpenConnection(dsname:=&#34;conexion&#34;, _
  11.     Prompt:=rdDriverCompleteRequired)
  12.  
  13.  
  14. With qy
  15.    .Name = &#34;BD&#34;
  16.    .SQL = &#34;Select * from docente Where no_tarjeta = ? &#34;
  17.    .RowsetSize = 1
  18.    Set .ActiveConnection = cn
  19. End With
  20.  
  21.  
  22.  SQL = &#34;Delete * From registro Where clave='&#34; & Text1.Text & &#34;' &#34;
  23.        
  24.                  
  25.  cn.Execute SQL
  26.  
  27. cn.Close
  28. en.Close
  29.  
  30. MsgBox &#34;El registro ha sido eliminado con éxito&#34;, vbOKOnly, &#34;SAD&#34;
  31.  
  32.  
  33.  

Como hago para añadir en where que elimine el registro solo si clave=text1.text y carrera=text2.text   ?

De antemano muchas gracias

23
Visual Basic 6.0 e inferiores / Base De Datos Remota Con Winsock
« en: Sábado 29 de Octubre de 2005, 23:07 »
Hola amigos, tengo un pequeño problemota.

Les cuento.

Hice un programa de administración de laboratorios del centro de cómputo de mi escuela.

El cual está compuesto por:

- Servidor: Registra automáticamente todos los accesos a cada computadora.
- Cliente para administrador: Manda órdenes al servidor de que apague, desbloquee/bloquee, mande mensajes a todas las pcs por laboratorio.
- Cliente: Bloquea cada computadora para que no pueda ser usada sin registrarse un alumno.

Bueno, el problema está en la aplicación cliente para administradores, porque esa aplicación es la que me muestra los reportes. Es decir esta aplicación se conecta con la aplicación servidor y le pide que le mande todos los registros en determinada fecha. Cuando el servidor recibe esa orden, hace la búsqueda y guarda los datos en un MSflexgrid y después los manda linea por linea a la aplicación cliente para administradores, pero resulta que para que me los mande correctamente debo poner un tiempo de retardo muy grande. Les pongo algo de código:

Código: Text
  1.  
  2.  
  3.   If Left(datos, 15) = &#34;/dame_reporte1:&#34; Then
  4.     tabla.Clear
  5.     z = Len(datos) - 15
  6.     aux = Right(datos, z)
  7.     c = 1
  8.  
  9.       While (Mid(aux, c, 1) &#60;&#62; &#34;,&#34;)
  10.         palabra = palabra & Mid(aux, c, 1)
  11.         c = c + 1
  12.       Wend
  13.    
  14.       anio.Text = palabra
  15.    
  16.       palabra = &#34;&#34;
  17.       c = c + 1
  18.    
  19.       While (Mid(aux, c, 1) &#60;&#62; &#34;,&#34;)
  20.         palabra = palabra & Mid(aux, c, 1)
  21.         c = c + 1
  22.       Wend
  23.      
  24.       If palabra = &#34;ENERO - JULIO&#34; Then
  25.         semestre.Text = &#34;1&#34;
  26.       End If
  27.       If palabra = &#34;AGOSTO - DICIEMBRE&#34; Then
  28.         semestre.Text = &#34;2&#34;
  29.       End If
  30.    
  31.       palabra = &#34;&#34;
  32.       c = c + 1
  33.    
  34.       While (Mid(aux, c, 1) &#60;&#62; &#34;,&#34;)
  35.         palabra = palabra & Mid(aux, c, 1)
  36.         c = c + 1
  37.       Wend
  38.    
  39.       laboratorio.Text = palabra
  40.    
  41.       palabra = &#34;&#34;
  42.       c = c + 1
  43.    
  44.       While (Mid(aux, c, 1) &#60;&#62; &#34;;&#34;)
  45.         palabra = palabra & Mid(aux, c, 1)
  46.         c = c + 1
  47.       Wend
  48.      
  49.       carreras.Refresh
  50.       enc = 0
  51.       While Not (carreras.Recordset.EOF) And enc = 0
  52.         If carreras.Recordset.nombre_materia = palabra Then
  53.           enc = 1
  54.           carrera.Text = carreras.Recordset.clave_materia
  55.         End If
  56.         carreras.Recordset.MoveNext
  57.       Wend
  58.    
  59. '  For c = 1 To 30
  60. '    tabla.TextMatrix(c, 2) = &#34;&#34;
  61. '    tabla.TextMatrix(c, 3) = &#34;&#34;
  62. '  Next
  63.  
  64.   Command2_Click  ' guarda los datos en el MSflexgrid llamado tabla
  65.  
  66.   If Winsock1(Index).State = 7 Then
  67.     c = 0
  68.     While c &#60; tabla.Rows
  69.       Winsock1(Index).SendData &#34;/envio_reporte1:&#34; & c & &#34;,&#34; & tabla.TextMatrix(c, 0) & &#34;,&#34; & tabla.TextMatrix(c, 1) & &#34;,&#34; & tabla.TextMatrix(c, 2) & &#34;,&#34; & tabla.TextMatrix(c, 3) & &#34;;&#34;
  70.       Delay (2)
  71.       c = c + 1
  72.     Wend
  73.   End If
  74.  
  75.   End If
  76.  
  77.  
  78.  


Como se habrán dado cuenta utilizo el control winsock.

En este código tiene un tiempo (delay) de 2, funciona cuando corro el cliente para administradores en la misma máquina donde está el servidor, pero si lo hago desde otra tengo que poner un tiempo (delay) de 20, el cual tarda una eternidad en mandarme cerca 30 lineas, si no lo hago así, me llegan los datos desordenados.

Espero pudieran decirme como hacer para que en menos tiempo me mande los datos. De antemano gracias por responderme.

24
C/C++ / Modo Gráfico En Windows Xp
« en: Sábado 8 de Octubre de 2005, 17:57 »
Hola amigos, pues el problema que ahora tengo es el siguiente:

Antes cuando tenia en mi pc windows 98 hice programas en modo gráfico, los cuales publiqué en la sección código fuente, es el de "Combo en c" y "Árboles binarios a la N en c"

Pero resulta que ahora que tengo windows XP SP2, no puedo ejecutar ningún programa en graficos ni aún los que trae borlandc 3.1 de ejemplos. Si pudieran orientarme que debo hacer?

De antemano gracias por su ayuda

25
C/C++ / [Código Fuente] Combo (Lista desplegable) en modo gráfico
« en: Sábado 17 de Septiembre de 2005, 23:04 »
Hola pues este código me sirvió de mucho para impresionar a quien yo creia era el mejor profesor de programación en mi escuela. Se trata de un combo en C++, está en modo gráfico y funciona al darle click con el botón izquierdo del ratón. Lo pueden utilizar para darle una hermosa presentación a sus aplicaciones.

Espero sus comentarios

Autor: Martín Campos Quintero

http://www.sisadmic.tk

Páginas: [1] 2 3