PDA

Ver la Versión Completa : como volver a traer datos de un stringgrid?


TURBOIGOR
14-12-2008, 20:58:23
hola les cuento mi problema

estoy utilizando un stringgird para hacer una asignacion d turnos...en la primer columna tengo los horarios cada media hr y en la primer fila el nombre del personal a cargo. Tambien hay un datetimpecker para cambiar de fecha.
Con el evento onselectcell del stringgrid se abre una pantalla para ingresar un nuevo turno (nombre del cliente y servicio a prestar por ej: Gustavo/corte de pelo). Lo que quiero saber es como hacer para dejar guardados esos turnos en la posicion donde los cargue...ya que cuando cambio de dia y vuelvo al dia donde estaban los turnos ingresados no estan mas.
Desde ya muchas gracias

Caral
14-12-2008, 23:30:30
Hola
Vi la pegunta, pero no se exactamente lo que podria hacer.
No entiendo muy bien, guardar los datos, guardarlos en donde?
Me podrias decir como cargas los datos?. y donde quieres guardarlos?
Si es en una base de datos, dime con que trabajas.
Saludos

TURBOIGOR
14-12-2008, 23:45:31
tengo una base de datos en access y dentro una tabla q se llama turnos.

cuando hago onSelectCell se abre otro form para ingresar el nombre del cliente q se va a atender y el servicio a realizar y asi se guarda:

turnos.StringGrid1.Cells[cell_col,cell_row]:=edit3.Text+'/'+edit6.text;
turnos.ADOTable1.open;
turnos.ADOTable1.insert;
turnos.ADOTable1.FieldByName('Fecha_turno').value:=turnos.DateTimePicker1.Date;
turnos.ADOTable1.FieldByName('Hora_turno').Value:=turnos.stringgrid1.cells[0,cell_row];
turnos.ADOTable1.FieldByName('Codigo_Cliente').Value:=edit1.text;
turnos.ADOTable1.FieldByName('Apellido').Value:=edit2.text;
turnos.ADOTable1.FieldByName('Nombre').Value:=edit3.text;
turnos.ADOTable1.FieldByName('Legajo').Value:=edit4.text;
turnos.ADOTable1.FieldByName('Nombre_emp').Value:=edit5.text;
turnos.ADOTable1.FieldByName('Servicio').Value:=edit6.text;
turnos.ADOTable1.post;
turnos.ADOTable1.close;
nuevo_turno.Close;

cuando cambio la fecha pongo q m blankee el stringgrid

procedure TTurnos.DateTimePicker1Change(Sender: TObject);
var x,y:integer;
begin
for x:= 1 to stringgrid1.ColCount-1 do
for y:= 1 to stringgrid1.RowCount-1 do
stringgrid1.Cells[x,y]:='';
end;

si kiero ir a una fecha mas adelante y desp volver atras ningun turno keda guardado en el stringgrid...
m conviene en la base de datos hacer 2 campos con la posicion d la fila y de la columna en dond estoy guardando los datos y traelos a traves d una consulta?

Caral
14-12-2008, 23:53:23
Hola
Veo que solo guardas (Hora_turno) del stringrid.
Tambien veo que usas un adotable.
Veo que al fina de la inserción cierras la tabla, (donde la abres otra vez?).
Cuando cargas los datos al stringrid?, como?
El programa me parece que por el momento es pequeño, me gustaria verlo con la base de datos.
Puedes hacer un Zip e ir a avanzado y adjuntar el archivo, asi lo veria mejor.
Saludos

TURBOIGOR
14-12-2008, 23:58:02
el programa zipeado pesa 550 kb como hago para subirlo?

Caral
14-12-2008, 23:59:28
Hola
1-Sube la base de datos aparte.
2-En el zip no pongas el exe del programa, quitalo.
Saludos

TURBOIGOR
15-12-2008, 00:08:20
el foro t deja subir 29kb zipeado y la base de datos m keda en 80kb y el programa m keda en 35kb como hago?:confused:

Caral
15-12-2008, 00:11:13
Hola
Caso dificil, no se que hacer, hay en internet varios sitios pero no me acuerdo donde.
El asunto es que viendolo me sentiria mas seguro.
saludos

TURBOIGOR
15-12-2008, 00:27:10
estoy subiendo los archivos a my 4 shared....t paso el link

http://www.4shared.com/file/75990038/6ee4c83/tunos_nuevo.html

Caral
15-12-2008, 00:29:52
Hola
Ya lo tengo, dame un minuto para revisarlo.
Saludos

Caral
15-12-2008, 00:39:03
Hola
Tengo un problema para abrirlo.
Por favor subelo otra vez pero necesito que enlaces todo a C:\.
Osea, la direccion que le pones es una ruta definida, si no esta en esa misma direccion no la puedo abrir, situa el proyecto en c y cargalo.
Ojala me explique bien.
Esto se soluciona con un datamodule y un ini, pero veo que no los tienes.
Saludos

Caral
15-12-2008, 00:45:54
Hola
A ojo, lo que puedo ver, tienes muchos problemas, el proyecto abre todo a la vez, no hay datamodule, la direccion tiene que ser exacta.
Bueno, esta un poco desarreglado, hay que darle un retoque.
Saludos

TURBOIGOR
15-12-2008, 00:51:57
listo...colocando la base de datos en C creo q t tendria q funcionar bajalo aca

http://www.4shared.com/file/75992857/64116fa7/TURNOS.html

Caral
15-12-2008, 01:04:55
Hola
Fue peor el remedio que la enfermedad.:D
Ahora ni siquiera me deja arrancar delphi.
El problema son las direcciones, no importa que uses delphi 7 y yo 6, ya me ha pasado antes.
El problema es la direccion exacta.
Cuando haces un proyecto, le indicas una direccion, tanto al proyecto como a la base de datos, si no coincide en mi ordenador me dara error, no podre verlo.
Tienes que colocar el proyecto completo en una direccion en comun.
Crea una carpeta en C:\ con el nombre Proyecto, quedaria asi: C:\Proyecto.
Ahi coloca todo.
Abre delphi y haz que el programa funcione en esa nueva direccion, correlo.
Ahora ya delphi sabra que el programa corre ahi.
Yo creo que podre verlo, eso espero.
Para que veas como es esto, te puedo decir la direccion en donde lo tienes ahora, es esta:
http://img154.imageshack.us/img154/3408/direcol7.png
Como ves si yo no pongo toda esa direccion no lo abrire.
Saludos

TURBOIGOR
15-12-2008, 01:18:42
veamos ahora

http://www.4shared.com/file/75995505/62675124/PROYECTO.html

Caral
15-12-2008, 01:32:53
Hola
No se por que me sigue dando problemas, me gustaria ayudarte pero no le llegamos a esta parte.
Aqui te dejo un zip con el programa, esta en la carpeta Proyecto y dentro de otra carpeta Turnos.
Abrelo con delphi, correlo, que delphi encuentre la base de datos, y los unit.
Reenviamelo ya funcionando en esa mismas carpetas, no las modifiques.
Espero poder ayudate, pero si no paso esto, no podre.
Saludos

Caral
15-12-2008, 01:39:39
Hola
El problema mas grabe es que usas una conexion individual en ciertos form, eso es lo que parece.
Osea en algunos form tienes o un adotable o un adoquery que esta ligado a una direccion de la base de datos, si no es la misma, no puedo abrir el proyecto.
Me muero de las ganas de cambiar eso.
Saludos
PD: Recuerda que la base de datos tiene que estar en ese mismo directorio, ponla dentro de la carpeta Turnos.
Trata de ponerlo directo en C:, no en documents and setins, administrador etc.
Que dificil abrir este proyecto, por eso se usa un adoconnection, esto evita todo este asunto.

Caral
15-12-2008, 02:01:46
Hola
Ya lo abrí, que dificil me la pusiste, pero para ser Novato lo pude hacer.
Voy a revisarlo.
Saludos

TURBOIGOR
15-12-2008, 02:14:50
Bueno ahora espero que lo revises y puedas aconsejarme algo .
:)

Caral
15-12-2008, 02:27:59
Hola
Lo que veo asta el momento.
AdoTable1 es el que inserta los datos en la tabla.
Esto lo hace bien
El asunto es:
1- Cuando arranca el programa carga en el stringrid los datos de los empleados y colocas las horas, bien.
2- Insertas los turnos, bien.
3- Quieres ver lo que insertaste, PERO, como lo vas a ver si no llamas a la tabla?.
Tienes que hacer el mismo procedimiento que haces cuando cargas los empleados, solo que definiendo las columnas adecuadas para que cargen los turnos.
aqui cargas el grid.


with StringGrid1 do
begin
//Título de las Filas
Cells[0, 0] := 'Horario/Profesionales';
Cells[0, 1] := '09:00';
Cells[0, 2] := '09:30';
Cells[0, 3] := '10:00';
Cells[0, 4] := '10:30';
Cells[0, 5] := '11:00';
Cells[0, 6] := '11:30';
Cells[0, 7] := '12:00';
Cells[0, 8] := '12:30';
Cells[0, 9] := '13:00';
Cells[0, 10] := '13:30';
Cells[0, 11] := '14:00';
Cells[0, 12] := '14:30';
Cells[0, 13] := '15:00';
Cells[0, 14] := '15:30';
Cells[0, 15] := '16:00';
Cells[0, 16] := '16:30';
Cells[0, 17] := '17:00';
Cells[0, 18] := '17:30';
Cells[0, 19] := '18:00';
Cells[0, 20] := '18:30';
Cells[0, 21] := '19:00';
Cells[0, 22] := '19:30';


//Titulo de las Columnas
consulta:= 'Select [Apellido_emp], [Nombre_emp] from Personal';
adoquery1.Close;
adoquery1.SQL.Text := consulta;
adoquery1.Open;

i:= 2;
datasource1.DataSet.First;

while not datasource1.DataSet.Eof do
begin
stringgrid1.ColCount := i;
stringgrid1.Cells[(i - 1),0]:= datasource1.DataSet.FieldByName('Apellido_emp').AsString + ' '+ datasource1.DataSet.FieldByName('Nombre_emp').AsString;
//stringgrid1.Cells[1, (i - 1)]:= datasource1.DataSet.FieldByName('Nombre_emp').AsString;
//stringgrid1.Cells[2, (i - 1)]:= datasource1.DataSet.FieldByName('ubicacion').AsString;

inc(i);
datasource1.DataSet.Next;
end;
La celda 0 es la hora, la celda 1 sera un empleado, la 2 el otro etc.
Ahora, para que se vea despues de que lo coloques puedes poner un boton de actualizar u otro procedimiento.
Voy a ver como le meto mano, para empezar ya puse un datamodule y un adoconnection.
Saludos

TURBOIGOR
15-12-2008, 02:35:22
bueno gracias por ayudarm :) ...recuerda q cuando cambio la fecha del datetimepicker blankeo el stringgrid y luego creo q habria q hacer una consulta para q m traiga los datos...mi problema es q no se como ubicarlos en la misma posicion dond estaban en el string, igualment en la base de datos estoy guardando la posicion del registro.

Caral
15-12-2008, 02:37:57
Hola
Ahora pregunto:
Por que en un stringGrid?.
El concepto para colocar los turnos esta bien, pero para visualizar los datos yo haria un form adicional con un dbgrid.
Un form para colocar los turnos, ya lo tienes y funciona, otro para ver el orden de estos.
No se, eso haria yo, en vez de estar actualizando el stringrid.
Saludos

TURBOIGOR
15-12-2008, 02:42:36
podrias hacerme un ejemplo y mandarmelo por favor pq no entendi bien como se utilizaria el dbgrid

Caral
15-12-2008, 02:48:06
Hola
Me imagino, no es por criticar, pero la sintaxis de programacion es malita.:D
El asunto es mostrar los resultados en otro form.
Pregunto:
Cuantos empleados hay, solo tres o puede que sean mas?.
Saludos

Caral
15-12-2008, 02:53:45
Hola
Pregunto:
Es imperativo usar un stringGrid?.
Es una tarea y se necesita usar?.
Se puede usar cualquier componente?.
Te gusta el strigGrid y por eso lo quieres usar?
Saludos

Caral
15-12-2008, 03:02:40
Hola
Es tarde.
Voy a hacerle unos cambios a mi gusto, por lo menos te serviran de ejemplo.
Mañana, con mas tiempo le meto mano.
Para empezar:
Voy a cambiar la manera como se llaman a los form y como arrancan, no es conveniente.
Voy a poner un form de visualizacion de datos.
Voy a enlazar los form como se debe.
Voy a quitar el evento Ondrawcell.
Voy a poner un Ini.
Ya puse el datamodule.
Bueno, para empezar creo que estara bien.:D
Saludos

TURBOIGOR
15-12-2008, 03:08:40
Bueno OK , me parece bien , gracias por tu ayuda que me diste hasta aqui , mañana sguimos , a que hora te conectas ??? sos de aca de Argentina ??

Gracias;):):ohttp://www.clubdelphi.com/foros/images/icons/icon14.gif

Caral
15-12-2008, 03:10:15
Hola
Vivo en Costa Rica.
Mañana veras los cambios, te dejare un archivo y te lo explicare.
Saludos

TURBOIGOR
15-12-2008, 16:27:18
hola Caral!!!

keria aclarart q el programa q t pase ayer d turnos es una partecita d todo un programa q estoy haciendo para una pelukeria. Dentro del programa general entre otras cosas, se pueden ingresar empleados nuevos...por eso en el stringgrid d turnos hago la consulta para q los agregue automaticamente cuando cargo un empleado nuevo....estare esperando tus respuestass
saludoss

Caral
15-12-2008, 19:33:13
Hola
Ya tengo algunos cambios.
He modificado algunas cosas.
pregunto:
hay varios form, de clientes, empleados, modificar turnos qu no estan enlazados a nada.
que quieres hacer?
Saludos

TURBOIGOR
15-12-2008, 20:38:06
el form d clientes y el d empleados estan enlazados a las 2 lupas q aparecen en Nuevo Turno y el form d modificar turnos no sabia como usarlos...xq tambien esta la posibilidad de modificar un turno o eliminarlo y eso tampoco sabia como hacerlo..cree el form pero no lo usaba

Caral
15-12-2008, 20:53:10
Hola
Si este es parte de otro programa te sugiero que revises el sistema como se conecta este.

Bueno aquí están los cambios:
1- Coloque un archivo INI. (DBD.ini).
Si te fijas esta en la misma carpeta, abrelo y veras esto:


Path="C:\Program Files\Borland\Delphi6\Projects\tunos nuevo\Copy of Turnos\Grupo Creativo.MDB"
[Logon]
Auto="No"
Login=""
Pass=""

Como ves en [B]Path esta la direccion donde esta la base de datos.
Esto quiere decir que si colocas la base de datos en otra direccion y modificas este archivo y lo guardas, el programa buscara la base de datos en esa direccion.
Ten presente que este archivo (DBD.ini) tiene que estar en el mismo directorio que el programa.

2- Coloque un Datamodule con un adoConnection.
Este es el que contiene la direccion de la bd, es lo mismo que hacías con cada adoquery y adotable, solo que ahora es uno solo.

3- Cambie la entrada de los form, en projects, options, veras que estan en un lado de la lista.
Eso hace que no arranquen con el programa gastando memoria en vano.
Para hacer esto cada form es llamado y destruido cuando no se usa.

4- El form Turnos, ahora solo sirve para establecer los turnos.
veras dos botones mas:
Revisar Turnos:
Este es el form nuevo, entra con los turnos de la fecha que esta en el datetimepicker (si cambias la fecha, mostrara los de esa fecha), una vez dentro, se puede hacer busqueda, por fecha, por usuario, etc, etc.
Me parece logico ya que puede que algun cliente tenga mas de un servicio, asi se desglosan todos los servicios, horas, etc.
Tambien cada empleado podra ver sus servicios, por hora, fecha, cliente, que se yo.
Modificar turnos:
Bueno, es lo que hace, pero se modifica por fecha, osea que el entrara en la fecha que este el datetimepicker del form turnos.
Se podra, editar, borrar, guardar. etc.

5- Modifique algunas cosas del form Nuevo turno.
Estaba creando un conflicto con las fechas de la bd.

6- Use mas adoquery, esto agiliza el programa.

Bueno, por ahora creo que tienes para un rato.:D
Saludos

TURBOIGOR
15-12-2008, 21:15:25
gracias caral la verdad q estoy viendo muchas cosas nuevas para mi nivel de conocimiento de delphi. Lo estoy probando pero m tira un error q t lo adjunto para q veas.

TURBOIGOR
15-12-2008, 21:18:49
se podria hacer q los turnos keden grabados en el dbgrid? y hacer la revision d turnos en esa pantalla?...pq por ejemplo si marco 2 veces la misma celda..m deja guadar 2 turnos en la misma fecha y mismo horario...y en el modificar seria bueno tambien poder cambiar la fecha....t agraderia mucho si m podes ayudar con eso, igualment este programa m servira muchisimoo:D

Caral
15-12-2008, 21:20:26
Hola
Vi el error.
Hay un conflicto entre el stringgrid y el el formulario.
Esto pasa cuando la techa esta en azul, no se por que.
Lo que pense es en no dejarlas en azul, o no tocar el stringgird cuando se llame al form, el asunto es que la tabla no esta seguro cerrada.
Ya pensare en esto.
Por ahora, revisalo.
Saludos

Caral
15-12-2008, 21:23:05
Hola
Para que eso no pase (cosa que no me dijiste) lo que se tendria que hacer es adjuntar un adoquery, que revise, tanto la hecha, hora y persona, para que si coinciden, envie un mensaje.
Saludos

TURBOIGOR
15-12-2008, 21:28:40
mira...yo para hacer esta peluqueria m base en una q baje d internet en esta pagina:

http://gdssistemas.com.ar/evaluacion/peluqueria/index.html

si puedes baja a version de evaluacion y fijate en la parte de reservas

Caral
15-12-2008, 23:28:56
Hola
Estoy viendo dos cosas.
Una ya la tengo, ya se pueden modificar los turnos, fecha y hora.
Estoy viendo lo de los turnos repetidos.
Me da algunos problemas estoy en eso.
Saludos

TURBOIGOR
15-12-2008, 23:56:09
te agradezco todo lo q estas haciendo por mi

pudist bajar el programa d la pag q t pase?
se podra hacer q guarde los turnos en el stringgrid?
pudist solucionar el error q mostraba? :confused:

Caral
16-12-2008, 02:49:45
Hola
Adelantos:
Ya se pueden ver los datos en el stringGrid como querias.
Con solo cambiar de fecha se presentan los datos.
Estoy trabajando en la confirmación de que no se dupliquen los turnos, me esta costando, eso de ser novato es un problema.
Paciencia.
Saludos

Caral
16-12-2008, 03:04:27
Hola
Bueno ya esta.
En el StringGrid se ven los turnos, si se cambia la fecha, estos se visualizan segun esta.
Cuando se hace un nuevo turno hay un boton donde se revisa primero si existe, hay que llenar los datos, luego se presiona el boton, hace una comparacion y si no esta, envia un mensaje.
Saludos
PD: Me canse.:D:D

TURBOIGOR
16-12-2008, 03:20:37
MIL GRACIAS :)MIL GRACIAS:)MIL GRACIAS:)

Ahora lo pruebo y te comento :o

TURBOIGOR
16-12-2008, 03:36:11
cuando se activa el formulario aparece en la celda (0,0) uno d los turnos, dice Maria del Lujan/corte y deberia decir Horarios/Personal...
tambien cuando se activa aparece la fecha de hoy 16 pero m esta mostrando los turnos del 15...

y m sigue tirando el error q t envie antes

te vuelvo a agradecer todo lo q estas haciendo...perdona tantas molestiass

Caral
16-12-2008, 13:47:11
Hola
1-A mi me muestra (Horarios/Personal) en esa celda, no se por que a ti no.
2-No me sigue dando el error.
3-Para que se actualice el stringgrid hay que actualizar la sentencia sql.
Es exacta a la que uso en el datetimepicker.
Para que la veas asi quedaria el evento Onshow del form Turnos:


procedure TTurnos.FormShow(Sender: TObject);
begin
with StringGrid1 do
begin
//Título de las Filas
Cells[0, 0] := 'Horario/Profesionales';
Cells[0, 1] := '09:00';
Cells[0, 2] := '09:30';
Cells[0, 3] := '10:00';
Cells[0, 4] := '10:30';
Cells[0, 5] := '11:00';
Cells[0, 6] := '11:30';
Cells[0, 7] := '12:00';
Cells[0, 8] := '12:30';
Cells[0, 9] := '13:00';
Cells[0, 10] := '13:30';
Cells[0, 11] := '14:00';
Cells[0, 12] := '14:30';
Cells[0, 13] := '15:00';
Cells[0, 14] := '15:30';
Cells[0, 15] := '16:00';
Cells[0, 16] := '16:30';
Cells[0, 17] := '17:00';
Cells[0, 18] := '17:30';
Cells[0, 19] := '18:00';
Cells[0, 20] := '18:30';
Cells[0, 21] := '19:00';
Cells[0, 22] := '19:30';


//Titulo de las Columnas
consulta:= 'Select [Apellido_emp], [Nombre_emp] from Personal';
adoquery1.Close;
adoquery1.SQL.Text := consulta;
adoquery1.Open;

i:= 2;
datasource1.DataSet.First;

while not datasource1.DataSet.Eof do
begin
stringgrid1.ColCount := i;
stringgrid1.Cells[(i - 1),0]:= datasource1.DataSet.FieldByName('Apellido_emp').AsString + ' '+ datasource1.DataSet.FieldByName('Nombre_emp').AsString;

inc(i);
datasource1.DataSet.Next;
end;


adoquery2.Close;
adoquery2.SQL.Text := 'Select Nombre, Legajo, Servicio, Pos_col, Pos_fila from Turnos Where Fecha_turno = :Fec';
adoquery2.Parameters[0].Value:= DateToStr(DateTimePicker1.Date);
adoquery2.Open;

while not datasource2.DataSet.Eof do
begin
a:= datasource2.DataSet.FieldByName('Pos_fila').AsInteger;
b:= datasource2.DataSet.FieldByName('Pos_col').AsInteger;
stringgrid1.Cells[(b),(a)]:= datasource2.DataSet.FieldByName('Nombre').AsString + '//'+ datasource2.DataSet.FieldByName('Servicio').AsString;

inc(a);
inc(b);
datasource2.DataSet.Next;

adoquery1.Close;
end;
end;
end;

Revisa el codigo y veras la diferencia.
Es bueno que te empapes del codigo.
Saludos

TURBOIGOR
16-12-2008, 14:03:29
Hola Caral , te contesta el papa , porque ella se fue a la Universidad a presentar una carpeta muy gorda con toda la info de este programa , en cuanto venga seguramamente estara probando y contestandote.-

Gracias http://www.clubdelphi.com/foros/images/icons/icon14.gif

TURBOIGOR
16-12-2008, 15:07:18
Hola caral la carpeta del sistema esta aprobadaa, el 23 rindo el final presentando el programa funcionando.

t molesto con una ultima cosita...el error ese de criterios m lo sigue mostrando cuando asigno un turno al stringgrid y luego apreto el boton de modificar turnos por fecha

Luego si abro modificar pone la fecha entre ##

t subo los errores aqui:

http://www.4shared.com/file/76225327/962df577/error.html

Caral
16-12-2008, 18:18:01
Hola
Ya esta la tarea echa, espero por lo menos una buena calificación.:D
El famoso problema que te atormentaba ya esta listo, era un asunto de dar formato a la fecha.
Cambios:
1- Ya el error no sale.
2- Cuando se presiona en algún turno, si este tiene algo asignado sale un mensaje antes de abrir la pantalla de Nuevo Turno.
3- Los turnos se muestran con la fecha exacta, tanto cuando se abre el programa como cuando se cambia la fecha en el datetimepicker.
He probado todo, a mi ya no me da ningún error, funciona bien.:)
Te aconsejo que veas el código, lo mastiques y trates de entenderlo, no te voy a hacer la tarea siempre, así no aprenderás, aunque a mi me sirven estos retos, así aprendo, algún día tengo que salir de Novato.:D
Saludos

TURBOIGOR
16-12-2008, 20:20:46
decime a dond tengo q ir para calificart y mientras pruebo el programa

Caral
16-12-2008, 22:51:50
Hola
Adelantando un poco el proyecto pensé en que era necesario un loguin, ademas de poder administrar tanto a los clientes como a los empleados.
Por cierto, una pantalla de entrada tipo menú.
Bueno, aquí practicando para mi graduación.:D
El programa ahora entra al loguin.
usuario caral
clave caral
Esto esta en la tabla usuarios, puedes añadir o quitar usuarios, ya sabes:).
Veo que tienes otras tablas, esto va a ser grande.:D
Saludos

egostar
16-12-2008, 22:53:31
Hola
Adelantando un poco el proyecto pensé en que era necesario un loguin, ademas de poder administrar tanto a los clientes como a los empleados.
Por cierto, una pantalla de entrada tipo menú.
Bueno, aquí practicando para mi graduación.:D
El programa ahora entra al loguin.
usuario caral
clave caral
Esto esta en la tabla usuarios, puedes añadir o quitar usuarios, ya sabes:).
Veo que tienes otras tablas, esto va a ser grande.:D
Saludos

Login amigo Login :D:D:D

Creo que no te vas a graduar si no apruebas ortografía jejejeje

Salud OS

Caral
16-12-2008, 22:56:54
Hola
:D:D:D:D
Pero yo siempre me logueo, no logeo.:D:D:D
Esto del spanglish.:D:D
Saludos.
PD: Bueno, te acepto 1 puntico menos.:D

egostar
16-12-2008, 22:58:36
Hola
:D:D:D:D
Pero yo siempre me logueo, no logeo.:D
Esto del spanglish.:D
Saludos.
PD: Bueno, te acepto 1 puntico menos.:D

Nada amigo, usted ya es un graduado con honores :)

Se le perdona una pequeña falla :D

Salud OS

TURBOIGOR
17-12-2008, 16:08:21
caraal

esta muy bueno..la verdad que el programa quedo barbaro!!espero ahora agregando estas pantallas poder recibirm...ya no sos novata sos todo un experto!!! te agradezco todo lo q hicist!!
la de la foto es tu hija?? felicitaciones!!!

saludoss

TURBOIGOR
18-12-2008, 17:47:17
caral probando el programa m di cuenta q si cambio de horario...no m mueve el turno en el stringgrid :confused: podrias ayudarm con eso por favor??

egostar
18-12-2008, 18:00:38
caral probando el programa m di cuenta q si cambio de horario...no m mueve el turno en el stringgrid :confused: podrias ayudarm con eso por favor??

Hola,

Eso de turno, es que cambias de fecha?

Si es así porque no analizas el codigo que muestra la información en el grid.

Como un tip busca sobre el evento OnChange del TDateTimePicker.

No sería mucho mejor que aprendieras por ti misma(o)????

Salud OS

Caral
18-12-2008, 19:04:41
Hola
Yo tampoco entiendo, que es lo que esta fallando.
Los as analizado bien?:D:D
Saludos

egostar
18-12-2008, 19:40:25
Hola
Yo tampoco entiendo, que es lo que esta fallando.
Los as analizado bien?:D:D
Saludos

Ah que mi maistro, gracias por el golpe bajo :(

Y tú ya lo has analizado bien ???? :D:D:D

Salud OS

Caral
18-12-2008, 19:42:00
Hola
:D:D:D:D
Saludos

TURBOIGOR
18-12-2008, 20:18:58
al pulsar Modificar Turno por fecha se abre su respectiva ventana.Cuando modifico el horario d un turno, no se cambia en el stringgrid de acuerdo al turno q estoy modificando.Ej: Si habia un turno a las 10 y lo modifico a las 11, lo cambia en la base de datos pero no lo mueve en el stringgrid.

Caral
18-12-2008, 20:23:09
Hola
Ya lo vi.
Es por que a la hora de traer los datos e incorporarlos al string se usan los datos de las columnas, no de la hora.
Hay que hacer un sistema que modifique la columna cunado modifique la hora.
Saludos

Caral
18-12-2008, 21:45:36
Hola
Bueno, esa parte ya esta, cambias la hora y cambia en el strng.
Se me ocurre:
Que pasa si quieres cambiar tambien de peluquero, asignarle ese trabajo a otro como dices tu Legajo?.
Se puede dar esta circunstancia?.
Saludos

TURBOIGOR
18-12-2008, 21:58:40
lo principal q necesitaba era cambiar de fecha y hora.. por legajo no te hagas problema...el usuario tendra q borrar el turno y asignarlo de nuevo. Entonces tienes para el cambio de horario??:o

Caral
18-12-2008, 22:45:31
Hola
Llegaste tarde, ya se pueden cambiar tanto las horas como los empleados y se presentan bien en el string.
Cambios:
1-En la tabla Personal el legajo es autoincremental.
2-Hay un campo activo, esto es por si el empleado ya no trabaja mas.
3-Cuando se modifican los turnos primero se presiona modificar, luego se hacen los cambios.
4-Hay 3 combobox nuevos en modificar turnos.
1 de la hora,
2 el legajo, este carga los que estan en la tabla y estan activos
3 el nombre del empleado, este carga los que estan en la tabla y estan activos
Todos se cargan solos.
5-Cuando se hacen los cambios (recuerda presionar primero el boton modificar) se cierra este form y se presiona el nuevo boton, Actualizar del formulario turnos.
Hay varios datos que seguro por ser pruebas no coinciden, es solo de ir modificandolos y se veran bien.
Bueno, ahi vas con este proyecto.:D
Saludos

TURBOIGOR
19-12-2008, 00:39:16
Gracias esta todo bien!! funciona barbaro!! espero no molestart mas ;)

Caral
19-12-2008, 00:41:17
Hola
No es molestia, yo aprendo mucho de estas cosas.
Estaba como tu, no sabia como hacerlo, asi que también aprendí algo nuevo.
Me gustaria que tu tambien aprendas.
Saludos

Caral
19-12-2008, 02:40:21
Hola
Nuevos cambios:
Cuando se presiona en los botones para buscar cliente, tanto en modificar turno como en nuevo turno, trae los datos del cliente que busco y los coloca en su respectivo form.
Otro cambio:
En el form revision, esta se hace no solo por medio de la fecha.
Me parecio que si se hacia una revision por legajo, nombre empleado, etc, deberia de ser con una fecha especifica, asi que ahora seran buscado tambien por la fecha especifica.
Saludos