Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Mi programa de facturación paso a paso (https://www.clubdelphi.com/foros/showthread.php?t=36433)

oscarnoe 09-11-2006 20:15:08

Referente al tema de logins y gestion de usuarios, yo prefiero almacenar el hash del password en la tabla, nunca la contraseña en si.

Os recomientod DCPCrypt para todo tipo de hashes y ciphers:

http://www.cityinthesky.co.uk/cryptography.html

Espero que os sirva de ayuda...

Oscar Noe

Caral 14-11-2006 18:10:58

Hola a Todos
Bueno teniendo en cuenta los feriados en España, la situacion empresarial y los aumentos en los insumos basicos, ademas del costo de los albaranes, creo que es de esperar que nuestro promotor del proyecto (Mi Programa de facturacion Paso a Paso), nos tenga un poco abandonados, a la espera de noticias desde hace ya 4 dias, sin contar las diferencias horarias.:D :D
Ahora si; Que pasa Delphitest, me tienes verdaderamente preocupado, he estado observando que hay otros foristas interesados en tu proyecto y :confused: , ven el hilo y se van desepcionados :rolleyes: .sin avances.
Yo por mi parte en mis horas de ocio, en las que con entusiasmo :) trataba de incorporar algo al proyecto y apreder mas, me siento defraudado, que pasa...:confused:.
Va deja ya la marcha y a trabajar hombre.
Saludos

Delphitest 15-11-2006 09:15:40

Muy buenas a todos,

tienes razón, me merezco una colleja :)

No es que tenga esto abandonado pero la verdad es que la parte de los albaranes me tienen totalmente bloqueado.

He tenido que hacer muchos cambios y ademas a medida que arreglo pequeños fallos surgen nuevas cosas y lo que pensaba hacer en unas horas se está convirtiendo en unas semanas. asi parece que es esto de la programación.

No he subido nada porque está a medias y no se entendería bien la finalidad.

Necesito pasar de un punto donde estoy atontado y bloqueado :mad:

No quería molestar al foro pero ya necesito un empujoncito porque sino me eternizo con esto.

Estoy haciendo los calculos del form albaran, muy diferente a lo que tenía inicialmente, aqui hay de todo un poco. Aunque voy avanzando con otras cosas sigo parado en el tema de calcular el porte en funcion del peso de la tarifa. Necesito usar como sea y siempre que se pueda, la orden locate ya que resulta muy comoda y no hay demasiado que detallar en ella. Pero no se exactamente si lo que quiero se puede o no hacer con ella. Os cuento:

Uso la siguiente sentencia para buscar el primer registro de la tabla TTarifa cuyo peso sea igual al contenido del Edit3.

Hasta ahí bien, pero hay un detalle importante y es que el peso en este caso debe de ser exactamente igual a ese valor sino no lo encuentra, sin embargo yo necesito que localice el primer registro cuyo peso sea >= a Edit3 y no se como hacerlo.

Código Delphi [-]
  DTMGesatrans.TTarifa.Locate('Peso',StrToInt(Edit3.Text),[]);

La tabla tarifa tiene por ej:

5
10
15
20
...

Si edit3 = 5 no hay problema, si edit3 = 10 tampoco lo hay ... pero si edit 3=11 quiero que se quede en el registro de 10 si es 17 , por ejemplo que se quede en 15 ...

No se si me explico bien, supongo que con sql esto se hace sin problema pero de momento preferiría hacerlo con locate para no liarme demasiado.

A ver si alguien se anima y me saca del tunel :(

Que tengais todos un buen día.

Caral no te preocupes que es cosa de días ;)

pepon386 15-11-2006 13:35:14

Si tienes un índice por ese campo, puedes usar la función FindNearest.

Robert01 15-11-2006 14:48:13

Hola Delphitest:

En el form repartidores cuando le ponés modificar se pueden cambiar todos los datos del repartidor pero no su foto.

Yo hice todo lo que tenías vos pero usando dbe. Hice algunso cambios.
Cuando esté todo listo lo subo.

saludos

Lepe 15-11-2006 14:48:34

Cita:

Empezado por Delphitest
supongo que con sql esto se hace sin problema pero de momento preferiría hacerlo con locate para no liarme demasiado.

Pues al no usar sql te estas liando más todavía con código delphi: Cuando FindNearest devuelve un valor,tienes que mirar si es el valor exacto o si es un valor cercano (por encima o por debajo) del peso, con sql lo tienes de un solo golpe, además ya lo dije en un mensaje anterior.

Saludos

Caral 15-11-2006 17:29:47

Hola Delphitest
La verdad sigo sin entender porque te cuesta tanto esto, es solo cuestion de preguntar en el foro, recuerda que hay verdaderos maestros en esto.
Bueno, tienes un problema que es:
Cita:

Si edit3 = 5 no hay problema, si edit3 = 10 tampoco lo hay ... pero si edit 3=11 quiero que se quede en el registro de 10 si es 17 , por ejemplo que se quede en 15 ...
Bueno la verdad lo tenias, te envio la modificacion, recuerda que he modificado la tabla tarifa, y por sobre todo que soy novatito y que hago lo que puedo, seguro habra mejores formas de hacerlo, pero no las conozco.
Aqui te envio los cambios, no te entretengas con otras cosas, sigue adelante, ya tendras tiempo de mejorar tu codigo.
http://rapidshare.com/files/3475098/Gesatrans.zip.html
Por favor revisalo, creo que es lo que necesitas.
Si pones cualquier numero que no sea el peso exacto el selecciona el conveniente automaticamente.
Saludos

Delphitest 15-11-2006 21:16:02

Hola Caral,

gracias por molestarte con esto.

He estado probando y repasando el código, pero no me sirve de esta forma.

Dentro del código hay varias lineas que mencionan los kilos, entre tanto y tanto ...

no puedo depender de esto ya que los kilos se pueden cambiar en cualquier momento desde la tabla tarifa y no siempre los saltos seran de 5 en 5 o de 10 en 10, es la parte delicada que tiene.

Necesito que una orden busque en la tabla y saque los datos pero amoldandose a los kilos que esten ahí aunque cambien de vez en cuando.

Sigo dandole vueltas pero no veo la forma.

si doy con algo os lo digo, pero esto se pone oscuro :o

Por cierto, diras que soy un poco pesado pero no funciona el tema del ini ;)
Haz la prueba y quitando la DB del sitio original colocala en otra ruta, ami solo me funciona si cambio el ADOConnection, sino nada.

Un abrazo para todos y siento las molestias

Caral 15-11-2006 21:26:57

Hola Delphitest
La verdad no se que te esta pasando, no nos envias codigo, asi que no sabemos nada.
A mi el programa que acabo de enviar funciona perfectamente, define los kilos y los calcula en base a la zona, no se si hay que hacer otro calculo adicional, sin codigo es dificil verlo.
Insisto, prueba el programa que te envie, el ultimo, hazlo correr y modifica un albaran, con esto te daras cuenta de cosas.
Por cierto tego un hilo empezado (Programa de Matematicas) en varios, este es para que los foristas aporten ideas y codigo, es interesante, casualmente trabaja con matematicas, revisalo y aporta ideas y codigo, se que puedes.
Saludos

Caral 15-11-2006 21:32:03

Por cierto.:rolleyes: Que ha pasado con nuestro amigo Robert01.:confused:
Se va de vacaciones y no pide permiso, ni avisa.:D
A ver si da señales de vida.:D :rolleyes:
Saludos

Delphitest 15-11-2006 22:07:40

Es cierto Caral, parece que ya no quiero subir nada ni compartir nada, pero te aseguro que no es por nada especial, sino simplemente que creo que lo que tengo hecho ahora mismo no sirve para nada, hay un lio impresionante, pero realmente impresionante. Hasta yo me pierdo en el código.

Soy consciente de que no estoy haciendo esta parte demasiado bien pero he llegado a un punto en el que me superan las cosas. Entre todos los cambios que van surgiendo dia a dia y las partes que no consigo hacer no veas que agobio me entra por momentos.

Aun así para que os hagais una idea y veais que realmente se está complicando el asunto, os pongo todo lo que tengo.

Aqui esta lo último

Hay que centrarse en los albaranes.

Los clientes tienen mas opciones, hay remitentes, destinatarios, volumen para el peso, desembolso en origen ... tengo la cabeza que ya no da para mas.

Hay varias casillas por ahi no visibles que he tenido que poner para conseguir algunos calculos.

Lo importante ahora mismo es:

Hay que editar un albaran, poner el peso y si queremos volumen, en Edit3 se recoge el peso max de esos dos valores, en DBEdit25 y solo despues de meter un destinatario (mas que nada pq antes no sabriamos donde va el bulto) se recoge la zona, que he calculado en base a los 2 digitos de la izquierda del codigo postal (Hay logicamente una tabla con los 52 codigos postales de España).

Ahora bien, en DBEdit21 quiero que aparezcan los portes en base a:

Peso que sale de Edit3 (pero no clavado sino que se tiene que amoldar a lo que hay en la tabla Tarifa)

Zona que aparece en DBEdit25

Ya no se ni si me estoy explicando bien o no, pero solo por curiosidad echarle un vistazo al codigo del form albaranes, asi se entenderá mejor mi bloqueo, cabreo, decepción, agobio ....

Buenas noches para el que pueda dormir bien, pq yo ya ni duermo :mad:

Caral 15-11-2006 23:14:55

Hola Delphitest
La verdad estoy mas confundido que tu pero lo voy a explicar como lo entiendo.
Por favor respondeme si o no a estos puntos:
1- Tarifa= Peso x zona
Es simplemente una tabla de comparacion.
Cita:

Osea envio tanto peso a tal zona y cuesta tanto.
2- destinatario ya tiene una zona seleccionada.
Cita:

Osea que al incluir un destinatario en la tabla ya le incluyo la zona.
3- El precio de porte= Peso x zona
Cita:

Osea que si envio 6 Kg a la zona 1, el porte sera el calculo en vase a la tarifa 5 { 7.96 Dividido entre 5 por 6}.
4- Supongo que viendo esto, yo lo haria por porcentage, me explico:
Cita:

Tengo un peso minimo 5 Kg, y un maximo 1000 Kg.
Tengo las zonas que quiera 1, 2,3,4,5 ect.
De acuerdo a la zona 1 y un peso de 5 Kg el porte es de 7.96
De acuerdo a la zona 1 y un peso de 8 Kg el porte es de 12.72
Y asi sucesivamente
Si es asi, con solo tener el valor minimo de cada zona x porcentage se sacan los valores por peso que se necesiten.
5-Tanbien se puede hacer en base a diferencias de peso me explico.
Cita:

Si envio de 5 a 10 Kg a la zona 1 cuesta 7.96 supongo ?
Si envio de 11 a 15 Kg a la zona 1 cuesta 8.74 supongo ?
Pero creo que estas no son el caso, de lo contrario seria bueno que lo comentaras.
Saludos

Delphitest 15-11-2006 23:47:52

Abre la Tabla Tarifa y lo entenderas.

El destinatario tiene una zona en funcion de la provincia de destino, es la que calculo en DBEdit25.

La tarifa es por ej:

Estos son los campos:

Peso, Precio Zona0, Precio Zona1, Precio Zona2 ...Precio Reexpedición

y los registros serían:

5, 3.75, 4.50, 5.60 ...
10, 4.50, 5.60, 7.20

es decir que un registro corresponde a un peso pero con diferentes zonas y precios para cada una.

Para calcular el porte hay que tener en cuenta el peso y una vez en el registro del peso correspondiente elegir la zona que coincida con la del destinatario.

con el locate que tengo puesto solo funciona si el peso es exactamente igual que el de un registro, por ej. 5 , 10 ... pero si pongo 6 deberia corresponderle la tarifa de 10 Kg (hasta 10Kg)

lo dejo por hoy, hasta mañana

yusnerqui 16-11-2006 15:52:29

Hola, creo que debes reconciderar el uso del SQL, con esto no te digo que cambies nada, pero si muy bien podrías ausiliarte de una función que use una instrucción sql para resolber tu problema:

Te confieso que no estoy muy empapado en tu programa, no se los componentes que usas etc, pero me he concentrado en el problema actual, si como supongo siempre debes coger el valor inmediato superior al peso introducido en caso de no ser este uno de los existentes puedes crearte una función similar a esta:
Código Delphi [-]
function paLocate(Peso: String): String;
Var
   Query:TADOQuery//suponiendo que uses ado.
begin
   Query:= TADOQuery.Create(nil);
   Try
     Query.Connection :=ADOConnection1; //El conector que uses
     Query.SQL.Text := 'Select min(peso) from TuTabla where Peso >= '+Peso;
     Result := Query.Fields[0].asString;
   finally
     Query.Free
   end
end;

Fíjate que te va a devolver el primer valor que sea mayor que el que has pasado como parámetro y en caso de que el parámetro exista en la base de datos te debe devolver ese mismo valor.

Pues nada que el resultado de esa función es el que le debes pasar a tu locate
Código Delphi [-]
 var
   MyPeso:String;
 begin
   MyPeso := paLocate(Edit3.Text)
   DTMGesatrans.TTarifa.Locate('Peso',StrToInt(MyPeso ),[]);
 end;

Espero que esto te de alguna idea, ya comentarás como te fue.

Consejo: No tienes idea de la cantidad de quebraderos de cabeza que te puedes quitar con solo usar pequeñas inyecciones de SQL en tu sistema.

Saludos

Delphitest 16-11-2006 21:11:10

Gracias Yusnerqui,

he incorporado ese código al programa y me da este error (a parte de los ';' que faltaban y he ido colocando)

Indice de la lista fuera de rango(0)


¿Sabes a que puede ser debido?

al final creo que debo de ser gafe :mad:

yusnerqui 16-11-2006 21:34:48

jeje, no te preocupes que la culpa es toda mía, jejeje, es que me faltó ejecutar la consulta:

Código Delphi [-]
function paLocate(Peso: String): String;
Var
   Query:TADOQuery//suponiendo que uses ado.
begin
   Query:= TADOQuery.Create(nil);
   Try
     Query.Connection :=ADOConnection1; //El conector que uses
     Query.SQL.Text := 'Select min(peso) from TuTabla where Peso >= '+Peso;
     Query.Open;
     Result := Query.Fields[0].AsString;
   finally
     Query.Free
   end
end;
Te recuerdo que no va a funcionar así de flai, debes ajustarlo a los componentes que estás usando. Saludos.

yusnerqui 17-11-2006 16:54:48

Bueno y te sirvió o no la función???

Saludos Yusnerqui

Delphitest 17-11-2006 20:41:54

Buenas Tardes,

no me ha servido o mejor dicho no le se sacar partido.

Pero me ha servido para pensar en otra forma para hacerlo y ahí ando, a ver si doy con ello de una vez.

Buen fin de semana y gracias de todos modos

Lepe 18-11-2006 13:28:45

Cita:

Empezado por yusnerqui
creo que debes reconciderar el uso del SQL

Cita:

Empezado por Lepe
Pues al no usar sql te estas liando más todavía con código delphi

... y erre que erre con delphi... :D :D

El error que yo veo en este hilo, es que está construyendo su propia carretera, sin querer ver que hay otras autopistas desconocidas para él, pero que ya llevan al destino de una forma más rápida y fiable.

En mi caso, la tarifa depende de:
- el peso y tipo de portes a ese cliente (1 porte diario, 1 porte semanal, 2 semanales, 2 al més), dependiendo de ese tipo de porte, se aplica una tarifa distinta (es idéntico a tu problema de zonas)
- la tarifa del cliente que paga el albarán (remite o destinatario del paquete)
- Incluso se puede establecer un precio especial para un albarán, distinto de la tarifa que exista en la BBDD.

Solución que le dí en aquel momento:
Un simple Combobox. Cuando el usuario rellena todos los datos (remite, tipo de portes, kilos), se hace una consulta a la base de datos con sql y en el combobox se añaden 2 o 3 items del tipo:
14 kg 15.00 €
20 kg 19.30 €

(suponiendo que el peso del albarán es de 16 kg)

Al entrar el foco en el combo, se despliega la lista automáticamente, y el usuario solo tiene que elegirlo. El usuario ya sabe que el precio normal sería entre 15 y 19 € para ese albarán. Pero es libre de poner el precio que quiera (porque sea un porte "especial").

Cuando el usuario elige una tarifa de la lista, en el Combobox.Text solo aparece el precio, es decir sólo "19.30 €". Así al echar una ojeada al albarán completo vé:
- Portes (los 19.30 €)
etc... (otras cantidades que no puedo revelar)
- Base imponible
- xx % de iva
- Total del albarán

Simple, efectivo y cómodo.

... Y todo esto se ha tratado en el foro...

Saludos

Caral 21-11-2006 19:28:57

Hola a todos
La verdad no entiendo que pasa con Delphitest :confused: , me preocupa que se llegue a desanimar, sin haber empezado.
Cuando se tiene un problema, normalmente se recurre a los amigos, hey hombre que aqui hay muchos, que pasa :confused: ,no entiendes algo :confused: , pues aqui te ayudamos, todo menos lo economico :D , tienes nuestra ayuda, hasta donde se pueda.
Este proyecto lo terminamos, porque lo terminamos, asi de claro, no se puede empezar algo y dejarlo a medias.
Entonces cuales son los nuevos avances.:rolleyes: , esperamos por ti Delphitest.
Saludos

Delphitest 21-11-2006 19:48:06

Buenas tardes,

gracias por preocuparte por mi Caral.

Sigo con el proyecto y pienso acabarlo como sea, ya es amor propio mas que necesidad ;)

No quiero marear mucho en el foro, prefiero acabar al menos la parte esta de los albaranes y subir las modificaciones terminadas, ya vendrán mas dudas con las facturas supongo y algo me tocará preguntar.

Ya he conseguido esto que tanto me costaba con las tarifas, ademas de una forma muy sencilla, ya os contaré.

El tiempo que dedico a esto es de madrugada ya que tengo mucho trabajo en estas fechas y no puedo estar todo lo que me gustaría programando.

Ahora debo apañar temas como tener en cuenta si el cliente tiene la tarifa general o se le factura por número de bultos, si tiene o no desembolso (recogida en un pueblo por ejemplo), idem para el destinatario con la reexpedición, muy importante si el peso es > 1000 Kgs ya que se tarifica de otra manera, el número del albaran debe de tener los dos últimos dígitos del año por delante para que no se mezclen de un año para otro ... un sin fin de cosas de van surgiendo y que debo solucionar como es normal. Pero mi base es muy baja en esto y reconozco que hay temas que me superan.


Ya no pongo fecha para subir las novedades, esto va para largo :o

Un saludo para todos y gracias a los que siguen este hilo con tanto interés, prometo acabar el proyecto y detallaros todo lo mejor que pueda.

Caral 21-11-2006 19:58:50

Hola Delphitest
Bueno si tienes mucha faena quiere decir que no necesitas duros :D , bueno ahora Euros, me alegra que sigas vivo y en el proyecto.
Por aqui estaremos si Dios nos da vida para ayudarte cuando lo necesites.
saludos

Caral 21-11-2006 20:03:36

Hola otra vez Delphitest
Este proyecto de matematicas, tiene muchas formulas y demas, seguro le sacas el jugo.
Este hilo, te va a servir, ve a la ultima parte, estan las actualizaciones:
http://www.clubdelphi.com/foros/showthread.php?t=37489
Saludos

Caral 28-11-2006 22:25:40

Hola a todos
Veo hace algunos dias como, con gran animo :) algunos foristas entran a ver este hilo, y, si pudiera ver sus caritas, tristes :o , desepcionadas :mad: , esperando que nuestro amigo y promotor Delphitest :D , nos de un adelanto o tan siquiera una probadita del programa.
Que pasa maestro, que tienes mucho publico, claro que dicen que para lo bueno hay que esperar :rolleyes: A que nos sorprende a todos :eek:
Bueno foristas, tambien hay que entender que es la epoca fuerte para el transporte, asi que paciencia, verdad Delphitest :D
Saludos

Delphitest 28-11-2006 23:07:24

Ahora si que tengo que reconocer que llevo mas de una semana sin hacer absoltamente nada.

Efectivamente Caral, es época de apreton en el trabajo, el turron, las cestas, las bebidas ... es imposible dedicarle tiempo a esto, ademas cuando lo hago me gusta centrarme en ello y que no me interrumpan continuamente con otras cosas, pero es inevitable asi que entre semana ni lo toco.

Luego llega el fin de semana y tambien hay cosas que hacer, todo se va acumulando ...

Lo que haré será intentar terminar partes dentro de la de los albaranes y a medida que las tenga lo subo para que veais los adelantos (que si que los hay).

A parte de todo esto se me ha ocurrido apuntarme a un curso que han ofrecido a la empresa sobre SQL, no he podido resistir, pero son 160 horas que no se ni donde las puedo sacar.


... en fin ... que acabo el año como siempre, hasta arriba de trabajo y bastante agotado, pero son temporadas que debemos aprovechar sino no compensamos las malas (que suelen ser mas frecuentes y asustan a veces)

Un abrazo para todos :)

Caral 28-11-2006 23:20:13

Hola, estas vivo, que bien.:D
Ahora entiendo lo que dicen las malas lenguas del transporte en estas fechas, claro, con tanto turron, cestitas navideñas y demas cositas, algo no llega a su destino.:D , por lo menos guardanos algo, que nos haces agua la voca.
De España la verdad lo que estraño son las castañas, por aqui no se consiguen, si algun transporte se pierde con castañas, ya sabes.
Saludos

Angel Fernández 29-11-2006 13:59:46

Citado por Caral "El que uso se llama Constructor es muy pequeño y facil de usar."

Caral, ¿podrías dar mas detalles de ese tal Constructor para crear ventanas de mensajes? ¿Pag web donde encontralo, enlace, autor, algo para descargarlo? Es que sólo con constructor salen miles de entradas en google.

Gracias

Caral 29-11-2006 19:23:54

Hola Angel Fernández
El constructor sirve para hacer mensajes, los haces en este copias y pegas en delphi, nada mas.
Incluso puede hacer sentencias If Then o Caso Of ademas de otras opciones.
Aqui te lo envio, espero te sirva.
http://rapidshare.com/files/5329232/...uctor.zip.html
Saludos

Angel Fernández 29-11-2006 23:03:12

Gracias Caral. Lo he bajado y la primera impresión es bastante buena. Trastearé un poco a ver.:)

Caral 30-11-2006 21:04:16

Hola Delphitest
Se que estas atareado por las fechas, pero he creado un hilo con un programa completo de facturacion, inventario y produccion, que se te puede dar una mano, viendo el codigo.
Revisa este hilo, que tiene el programa.
http://www.clubdelphi.com/foros/showthread.php?t=38055
Saludos

Robert01 01-12-2006 03:31:49

Cita:

Empezado por Caral
Hola Angel Fernández
El constructor sirve para hacer mensajes, los haces en este copias y pegas en delphi, nada mas.
Incluso puede hacer sentencias If Then o Caso Of ademas de otras opciones.
Aqui te lo envio, espero te sirva.
http://rapidshare.com/files/5329232/...uctor.zip.html
Saludos

Es muy bueno el constructor, hasta se puede usarlo en lazarus.

Desafortunadamente no hay una versión de lazarus en castellano pero si en catalán o gallego si no me equivoco, es irónico pero creo que los que hablamos castellano somo más.

Delphitest 09-12-2006 20:10:11

Muy buenas a tod@s,

vaya, hoy que tenía un rato libre, ¿digo bien rato libre? jejejeje he decidido ponerme de nuevo con el programa y atención sorpresa ... ya no se por donde van los tiros, jajajaja :)

Es increible pero despues de este tiempo sin tocar nada me cuesta un poco ranudar todo esto, está claro que no hay que dejarlo de lado tanto tiempo.

Os subo aqui el punto donde lo había dejado para que se vaya viendo algo. Los cambios están básicamente en el Form Tarifas y Albaranes, y logicamente en lo que conlleva en la base de datos (que son muchos)

Aqui lo subo como las veces anteriores, por cierto he borrado todo lo del mes de octubre para limpiar un poco el hosting.

Una duda que tengo:

En las tarifas he tenido que añadir hasta la Zona6 en vez de 4 como antes y de paso me he dado cuenta de un error que me da siempre que añado un registro nuevo. Al darle a añadir me lleva logicamente a la ultima fila de un DBGrid y la puedo rellenar, pero si por descuido pulso TAB eso me genera otro registro mas abajo y al darle a guardar salta un error.

¿Hay forma de desactivar la tecla TAB ? o de evitar que estando ya añadiendo un registro permita saltar a otro nuevo ?

Seguro que es una tontería que se me había pasado por alto y no me gusta que quede asi.

Caral, ya veo que has posteado el programa tuyo, enhorabuena y gracias por tu aportación, supongo que tenías mono de facturación al dejar yo esto de lado ;)

A ver si soy capaz de al menos tocar este tema una vez por semana, sino no acabo nunca.

Un abrazo para todos y feliz fin de semana

fjcg02 16-12-2006 02:02:27

Tras leer el hilo y ver que Caral además ha incluido un hilo con su aplicación completa, os voy a regalar una golosina. No tiene mucho que ver con esto , pero a la vez sí.
Tiene filtros por varios campos, archivos adjuntos, calcula nuevo nº de presupuesto , pinta colorines dependiendo de los estados, ..... Empezó hace mucho, es mejorable pero bueno, ahí está.
Caracteristicas:
- Programa de control de presupuestos, multivendedor.
- Multiples filtros.
- Tipologia de presupuestos/ventas gestionable.
- Gestión de mensajes entre usuarios (Postit).
- Gestión de estados y cobros.
- Gestión de incidencias en trabajos.
- Gestión de archivos adjuntos -> cada presupuesto direcciona un directorio, donde se encuentran los archivos asociados: presupuesto, planos, fotos, contratos, ..... crea un archivo y prueba a clickar dos veces sobre él.
- CUADRO DE MANDO: Pestaña de Control del Negocio en una sola ventana. Listados de control de multiples puntos de vista, consolidación de años, ... Posibilidad de imprimir los resultados ( todo ello con una sola ventana de impresión ), ... Las impresiones creo que merece la pena revisarlas. ( Caral, tras ver tu programa vi que te vuelves loco con los formularios de impresión, aquí con uno puedes hacer el 90 % del trabajo, cambiando solamente los parámetros de llamada) Los campos en rojo son los que se totalizan. Para incluir una nueva consulta en el cuadro de mando, solo hay que añadir un nuevo registro en la tabla Consultas; a gusto del consumidor.
- Utiliza Access.
- ...

Mejorable: SI . Mejoralo tú mismo. Muchas de las ideas han salido adelante gracias a la ayuda de este foro.
Una pega: Abre las tablas a saco, si se utilizan muchos registros puede ralentizarse. Actualmente funciona en una empresa con 5 trabajadores, sin problemas importantes en los cuatro ultimos años.

Para utilizarlo: extraer todos los archivos en un directorio, compilar y arrancar. Usuarios definidos: PRUEBA ( administrador del sistema ) y USUARIO1, ( currito con opciones capadas ), clave para los dos 'PERRITO'.
Son necesarias D7 , QReport y las Jedi ( o eso creo).

NO DOY SOPORTE, o sea, no me pregunteis nada, porque no prometo contestar.
Este programa es jamonware, es decir que si quieres usarlo tal cual, puedes hacerlo, y también puedes mandarme un jamón.
Hasta lueguito.

Un saludo ;)

zarzuela 19-12-2006 14:23:31

Aqui tienes una forma de que te aparesca el mensaje en español
 
if Application.MessageBox('Seguro de abandonar la aplicación','Advertencia',MB_OKCANCEL + MB_DEFBUTTON1) =IDOK then
Application.Terminate;;)

ArdiIIa 11-01-2007 03:02:52

Vaya peazo hilo... :(
Cita:

Empezado por Delphitest

¿Hay forma de desactivar la tecla TAB ? o de evitar que estando ya añadiendo un registro permita saltar a otro nuevo ?


Bueno a tu pregunta, si no lo has solucionado yo utilizo esto en un DbGrid.

Código Delphi [-]
procedure TFormServicios.ControlTecla(Sender: TObject; var Key: Word;  Shift: TShiftState);
begin
    if TDbGrid(Sender).DataSource.DataSet.State in dsEditModes then
    if key in [VK_UP,VK_DOWN] then
    key := 0;
end;

Que es llamado desde el evento OnkeyDown de DbGrid

Suerte ;)

Delphitest 06-02-2007 12:17:26

Buenos días a tod@s,

ante todo quiero pedir disculpas por haber dejado en el olvido este proyecto que empece con tanta ilusión y agradeceros a todos el interés y la ayuda que me habeis prestado.

El no haber vuelto a publicar ningún mensaje ha sido debido a que poco a poco me he encontrado con cosas que no he sabido resolver, y un día por otro he empezado a alargar la frecuencia con la que me ponía manos a la obra por simple pereza hasta llegar al punto de dejar por completo el proyecto sin terminar.

Se me junto el exceso de trabajo en fechas navideñas y la falta de conocimientos. Ha estas alturas quiero intentar retomarlo donde lo deje pero veo que me va a costar mucho trabajo, mas que nada porque no recuerdo practicamente nada, asi que tendré que dedicarle un tiempo en ver por donde iba todo esto.

No entraré tan fuerte como antes porque no dispongo de tanto tiempo, quizas solo unas horas los fines de semana.

Ademas en paralelo me estoy interesando por el tema de enlaces a través de las API y eso me pilla mas en blanco todavía.

Procuraré informaros de mis adelantos (si es que los hay ;) )

Un abrazo muy fuerte para todos (especialmente para Caral)

Caral 06-02-2007 17:40:43

Hola Delphitest
Me alegro que estes otra vez por aqui.
Reconozco que tambien tenia un poco olvidado el tema, pero me parece muy bien que quieras reiniciarlo, aunque sea a ratos.
Sabes que puedes contar con mi poco conocimiento para cualquier duda, sigo con tigo.
Por cierto feliz año, y a empezar la faena, que esta hay que terminarla.
Saludos

zurdosoft 03-05-2007 21:08:54

Felicitaciones a todos
 
He pasado mas de 3 horas leyendo el hilo y quede gratamente sorprendido.:p
Es como para escribir un libro.
A propósito recuerdo cuando comence a trabajar con microprocesadores, mi profesión es electrónica, compre un libro que se llamaba "Construya su computadora basada en Z80", este explica paso a paso como funcionan todos sus componentes y como se prueban. Fue lo más didactico que vi, hasta leer este hilo.
Aqui se puede ver el progreso de una aplicación desde cero, la solución a distintos problemas del desarrollo, las discuciones y defensas de los distintos sistemas de bases de datos, en fin, realmente lo que debe evaluar un programador.
Felicitaciones a Caral por su perseverancia y a todos por su aporte.
Soy mayor, tengo 57 años, no muy partícipe de los foros, salvo como lector.
Gracias chicos por haberme dado esta lección de cooperación.;)

Jorge Ferreyra
Córdoba, Argentina

Caral 03-05-2007 21:17:38

Hola zurdosoft
Gracias por lo de chaval, a mis 46 años me va muy bien que me lo digan:D
Lastima que Delphitest, se nos olvide del programa para poder llevarlo a su fin, es una manera interesante de aprender, bueno algun dia lo retomara.:rolleyes:
Saludos

tenporal 02-06-2007 02:51:17

Agradecimiento por su ayuda desisteresada
 
1 Archivos Adjunto(s)
Saludos a todos los que aportaron en mayor o menor medida en este hilo, lo he leido todo, desde el principio entusiasta de DelphiTest ( que duro bastante tiempo ), la ayuda constante de Caral ( que aunque dice que es un novato, sabe mas que algunos que nos consideramos programadores ), tambien quiero reconocer la aportacion de muchos mas que dieron aliento y esperanza a Delphitest y de paso nos brindaron la oportunidad de recordar el trabajo que cuesta empezar una aplicacion desde nada ( solo basta el empuje y las ganas de aprender ). Solamente me queda agradecerles su ayuda desinteresada de querer compartir sus conocimientos y ayudar al projimo.

Yo soy aprendiz del lenguaje delphi, ( Tengo como 2 meses utilizandolo en una escuela preparatoria de Mexico), aunque tengo experiencia programando en pascal, c, visual foxpro y otros lenguajes mas. Me ha sorprendido la facilidad y versitilidad de este lenguaje de programacion. (no se diga en la conectividad con bases de datos). Espero en poco tiempo realizar aportaciones a este foro para agradecer el aprendizaje que estoy obteniendo de ustedes. Aqui adjunto mi primera aportacion que no tiene nada que ver con este hilo, pero espero que sirva (resuelve y grafica ecuaciones de 2do grado por medio de la formula general).
Saludos a todos.


La franja horaria es GMT +2. Ahora son las 06:45:36.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi