Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #61  
Antiguo 10-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Antes de seguir comentaros que el tema de la Ley de Protección de Datos obliga a que nuestro programa tenga acceso con claves y nuestra base de datos también, en este caso estoy usando Firebird y para esta demo no lo haré, pero ademas uso unas funciones y encripto los nombres y documentos (NIF, DNI) dentro de la base de datos, desencriptandolas en los formas, ya que nos encargamos que al form sólo se accede si se tiene el nivel necesario.

Vamos con la estructura de las siguientes 6 tablas

Proveedores

Cita:
CREATE TABLE PROVEEDORES (
ID INTEGER NOT NULL,
CODIGO T20 /* T20 = VARCHAR(20) */, //Código del proveedor
EMPRESA T80 /* T80 = VARCHAR(80) */, //Nombre de la empresa
LIBRE T80 /* T80 = VARCHAR(80) */, //Campo libre sin uso inicialmente
CIF T20 /* T20 = VARCHAR(20) */, //Número del CIF o documento identificativo
FECHAALTA DATE, //Fecha de alta
FORMAPAGO T40 /* T40 = VARCHAR(40) */, //Forma de pago
DIASPAGO T20 /* T20 = VARCHAR(20) */ //Los días de pago
);
Empleados incluye a los agentes

Cita:
CREATE TABLE EMPLEADOS (
ID INTEGER NOT NULL,
CODIGO T20 /* T20 = VARCHAR(20) */, /Código del empleado
AGENTE LOG /* LOG = CHAR(1) */, //Es un agente/comercial
MEDIACOMISION NUMERIC(15,2), /Media de su comisión, se puede poner la más alta y el programa regulara sobre la comisión por producto
FECHAALTA DATE, //Fecha de alta
FECHABAJA DATE, //Fecha de su baja (Los datos de los empleados en ciertos sectores no se pueden borrar nunca, como en todas las empresas del sector químico
NUMEROSEGURIDADSOCIAL T40 /* T40 = VARCHAR(40) */, //Número de la seguridad social
NUMERODOCUMENTO T40 /* T40 = VARCHAR(40) */, //Número de documento identificativo, Nif, Dni, pasaporte, etc
COMISIONDTO1 NUMERIC(15,2), //Descuento a aplicar en la comisión si se aplica el Dto 1
COMISIONDTORAPEL2 NUMERIC(15,2), //Descuento a aplicar en la comisión si se aplica el Dto o rapel 2
COMISIONDTORAPEL3 NUMERIC(15,2), //Descuento a aplicar en la comisión si se aplica el Dto o rapel 2
COMISIONDTORAPEL4 NUMERIC(15,2), //Descuento a aplicar en la comisión si se aplica el Dto o rapel 3
COMISIONDTORAPEL5 NUMERIC(15,2), //Descuento a aplicar en la comisión si se aplica el Dto o rapel 5
PUESTO T20 /* T20 = VARCHAR(20) */, //Puesto que ocupa dentro de la empresa
NOMBRE T80 /* T80 = VARCHAR(80) */, //Nombre de la persona
SALARIO NUMERIC(15,2)// //Sueldo de la persona (este campo sólo lo dejaremos ver a los empleados de mayor nivel
);
Como podéis ver se aplica un descuento en las comisiones según el rapel o descuento que aplicamos entre el 2 y el 5 (rapel), pero no en el 1 ya que es el precio base, este descuento de la comisión se aplica si el descuento dentro del producto es diferente de 0, ó si se ha aplicado el rapel.

Fabricables
Cita:
CREATE TABLE FABRICABLES (
ID INTEGER NOT NULL,
CODIGO T20 /* T20 = VARCHAR(20) */, //Código del fabricable
PRODUCTO T80 /* T80 = VARCHAR(80) */ //Nombre base del producto a fabricar
);
Formas de pago

Cita:
CREATE TABLE FPAGOS (
ID INTEGER NOT NULL,
CODIGO T20 /* T20 = VARCHAR(20) */, //Código de la forma de pago (este campo es único)
FORMAPAGO T40 /* T40 = VARCHAR(40) */, //Formas de pago a establecer
DIASPRESENTACION T20 /* T20 = VARCHAR(20) */, //Días de presentación
DIASCOBRO T20 /* T20 = VARCHAR(20) */, //Dias de cobros
NUMERODEPAGOS INTEGER// Si tiene pago aplazado el numero de plazos
);
Pagos plazos

Cita:
CREATE TABLE PAGOSPLAZOS (
ID INTEGER NOT NULL,
CODIGOFORMADEPAGO T20 /* T20 = VARCHAR(20) */, //Código de forma de pago a la que esta unida
NUMERODEDIAS INTEGER, //Número de días desde la emisión de la factura, dejar en blanco si no se quiere especificar
PORCENTAJEPAGO NUMERIC(15,2) //Porcentaje del total de la factura a cobrar en este plazo
);
Bueno en primer lugar decir que estas son las primeras tabla que están enlazada ( FPAGOS es el maestro y PAGOSPLAZOS el detalle), después sobre la tabla PAGOSPLAZOS
deciros que mi modo de uso es el siguiente pongo dos ejemplos

1º) Cliente pago a 30(40%),60(30%),90(30%) días factura 1000, fecha 30/06/2013 y días de pago del 20 al 25, quedarían los pagos de la siguiente manera

25/07/2013..Importe 400.00 euros [Pago lógico 30/07/2013] (como podemos ver no llega a los 30 días, pero hemos cogido el dato de sus fechas de pago, en caso contrario se iría a casi dos meses)
25/08/2013..Importe 300.00 euros [Pago lógico 29/08/2013]
25/09/2013..Importe 300.00 euros [Pago lógico 28/09/2013]

2º) Cliente paga a 50% y 50%, factura de 1000 euros, fecha 30/06/2013 y días de pago del 20 al 25, lo pagos serían
25/ (mes a designar entre el cliente y la empresa)/2013..Importe 500.00 euros
25/ (mes a designar entre el cliente y la empresa)/2013..Importe 500.00 euros
Al no poner el número de días sólo tenemos en cuenta el día de pago y no el número de días a transcurrir para cada uno de los plazos.

La tabla Lotes

Cita:
CREATE TABLE LOTES (
ID INTEGER NOT NULL,
CODIGOPRODUCTOFABRICABLE T20 /* T20 = VARCHAR(20) */, //Código del producto Fabricable
CODIGOEMPLEADO T20 /* T20 = VARCHAR(20) */, //Código del empleado responsable
FECHA DATE, //Fecha en que se fabrico
LOTE T20 /* T20 = VARCHAR(20) */, //Lote asignado
CADUCIDAD DATE, //Si es caduco su fecha de caducidad
CANTIDAD NUMERIC(15,2), //Cantidad total fabricada (litros, kilos unidades)
ACTIVO LOG /* LOG = CHAR(1) */ //Si el producto esta activo
);
Sobre el campo ACTIVO, lo usamos para saber si es un lote que se puede vender (S) o no se puede vender (N), por que sea para trasformación, o sea un lote retirado del mercado.

Aunque nadie me ha preguntado, si os dais cuenta, en mi tabla artículos, no he puesto campos para tallas, colores, tamaños o si esta dividido en partes, si lo necesitáis sabéis que son campos que tienen que usarse con tablas auxiliares. yo en esta demo no las voy a poner, pero no esta demás comentarlo.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #62  
Antiguo 10-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Módulo de productos fabricables



Aquí el código https://gist.github.com/anonymous/5748411
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #63  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Cambios importantes en los módulos auxiliares (Notas, Imágenes, Direcciones, Bancos, Contactos, Personas de contacto)

1º) se ha añadido un IBQuerry y su datasource el ModuleData (UDM en mi caso), para facilitar los datos a todos los modulos que lo llaman,, eliminando parte del código de control en cada uno de estos, el aspecto actual de mi UDM es el siguiente



Los cambios en su código son los siguientes:

Código Delphi [-]
procedure TDM.conectar;
//------------------------------------------------------------------------------
//**************************************************************[ Conectar ]****
//Nos permite conectar las tablas, querrys + IBDatabase + IBTransaction
//------------------------------------------------------------------------------
begin
   IBDatabase1.Connected:=True;  //La base de datos
   IBTransaction1.Active:=True;  //Las Tansacciones
   IBDCLIEN.Active:=True;        //La tabla Clientes
   IBDirecciones.Active:=True;   //La tabla Direcciones
   IBDPC.Active:=True;           //La tabla Personas de Contacto
   IBDContacto.Active:=True;     //La Tabla de datos de contacto
   IBDBcos.Active:=True;         //La tabla de Bancos
   IBDCONFI.Active:=True;        //La tabla de Configuración
   IBDUSUA.Active:=True;         //La tabla de usuarios (permisos de acceso)
   IBDNOTAS.Active:=True;        //La tabla de notas
   IBDIMAGENES.Active:=True;     //La tabla de Imagenes
   IBDPROVEEDORES.Active:=True;  //La tabla de Proveedores
   IBDLOTES.Active:=True;        //La tabla de Lotes
   IBDARTICULOS.Active:=True;    //La tabla de Artículos
   IBDFAMILIAS.Active:=True;     //La tabla de Familias
   IBDFABRICABLES.Active:=True;  //La tabla de Fabricables
   IBDSTOCK.Active:=True;        //La tabla de Stock
end;


procedure TDM.DataModuleDestroy(Sender: TObject);
//------------------------------------------------------------------------------
//*********************************************************[ Al destruirlo ]****
// Nos aseguramos de que no se nos queden Querys abiertos     //Añadir el archivo Fun.Pas
//------------------------------------------------------------------------------
begin
   QuerryOC(IBQIMAGENES);
   QuerryOC(IBQNOTAS);
   QuerryOC(IBQDirecciones);
   QuerryOC(IBQPersonasContacto);
   QuerryOC(IBQContactos);
   QuerryOC(IBQBancos);
end;


2º) en el FormClose de cada módulo auxiliar ponemos el siguiente código




















//////////He editado nuevamente este post cambiando lo que había puesto por lo siguiente y explico lo que he eliminado///////////






Código Delphi [-]

//Cambiar donde aparece XXX por lo que proceda (Nombre del MODULO, de la Tabla, de el IBDataSet, del IBQuerry, del módulo de llamada o del SpeedButtonBC)

procedure TFNotas.FXXXClose(Sender: TObject; var Action: TCloseAction);
//------------------------------------------------------------------------------
//*************************************************[ Al Cerrarse El Form ]******
// Cerramos todos los procesos para que no consuman memoria y posibles errores
//------------------------------------------------------------------------------
begin
   if Timer1.Enabled=true then  Timer1.Enabled:=False;
   ActIbdataset(DM.IBDXXX,'select * from XXX');
   //Retornos al modulo de llamada
   if VarSNomMod='XXX' then FArticulos.SpeedButtonBCXXXClick(sender);
end;

he eliminado el siguiente código

Código Delphi [-]
   if DM.IBQXXX.Active then  //Nos aseguramos de refrescar los datos del querry, con los nuevos introducidos si los ha habido
   begin  //No uso refresh, ya que muchas veces no funciona y de esta manera es más efectivo el refresco de datos
      DM.IBQXXX.Active:=False;
      DM.IBQXXX.Active:=True;
   end;

, al ya esta controlado en la lineas

Código Delphi [-]
 if VarSNomMod='XXX' then FArticulos.SpeedButtonBCXXXClick(sender);

Que no había actualizado, con lo que el código anterior era redundante.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"

Última edición por José Luis Garcí fecha: 19-06-2013 a las 11:36:11.
Responder Con Cita
  #64  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Ahora le toca al modulo de proveedores

LA imagen



he marcado algún olvido y lo que hacen algunos botones, ahora las pestañas

0º) Es la de los datos, vemos que realmente en la tabla proveedores tenemos que introducir pocos datos, pero que el conjunto de datos con las auxiliares la completa bastante

1º) Contactos. Recordar que esta tabla sera luego nuestra agenda, permitiendo, separarlo, por Clientes, proveedores, etc, ademas de todos, buscar por el nombre/empresa/etc y ponderemos un indice que nos permitirá ver clasificado por su inicio.

2º) Notas, como podemos ver en este caso tenemos dos notas y las hemos clasificado (campo descripción) como avisos y recordatorio, pero podríamos tener muchos más solo para este proveedor, aquí es donde se ve la potencia de este modo de programar, que aunque un poco más lioso nos da mucha más potencia.

3º) Las Imágenes, Como podemos ver también hemos puesto 2 la del logo y productos.

4º) Personas de contactos, , al tenerla en una tabla auxiliar, nos permite tener multitud de personas de contacto dentro del mismo registro

5º) Direcciones, al igual que la anterior tabla podríamos tener multitud de direcciones (Almacenes, oficinas, tiendas, etc).

6º) Bancos, sería más correcto decir cuentas, pero un cliente/proveedor/etc, puede trabajar con más de un banco o más de una cuenta corriente.

7º) Aquí ira nuestro modulo de compras a este proveedor, que aún no desarrollaremos.


No voy a entrar en algo que ya se ha hablado ampliamente en los foros, sobre las notas y las imágenes si guardarlas dentro de las tablas o sólo guardar su referencia en la tabla y guardarla físicamente en archivos en el disco duro.

También quiero explicar que poner en las pestañas los campos nombre del módulo y código de las tablas auxiliares, es para que quede más claro en el tutorial, normalmente, serían campos no visibles.

y el código podéis bajarlo de https://gist.github.com/anonymous/5812746
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"

Última edición por José Luis Garcí fecha: 19-06-2013 a las 12:42:55.
Responder Con Cita
  #65  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
El módulo de Formas de pago



En este módulo hay cosas que cambian, al tratarse de usar una tabla maestro y otra detalle, como podemos ver tenemos 2 panales con botonera y debemos controlar ambas y aunque en la imagen no se ve tenemos un sólo juego de botenes de confirmación y cancelación, para que quede más claro hay que estudiar el código

podemos ver que hemos hecho la relación maestro detalle en el módulo UDM




Aquí el código https://gist.github.com/anonymous/5812904
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #66  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Y por último en el día de hoy el modulo de búsqueda.



como podemos ver un módulo sencillo de tan sólo 160 lineas actualmente, que ira creciendo según avancemos el proyecto, sólo tendremos que añadir el control de los módulos de llamada y su retorno, ya que este módulo sera llamado por varios módulos.

No usamos la función de coloración del grid, ya que al ser este variable, en número de campos nos daría un error, más adelante lo modificare y añadiré el código, para que se ajuste al resto del diseño.

El código aquí https://gist.github.com/anonymous/5812974
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #67  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Gran trabajo
Responder Con Cita
  #68  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Muchas gracias Casimiro, viniendo de ti un gran maestro, se agradece mucho más, ya que yo soy un burrito, comparado con el nivel que hay en el club, la suerte o desgracia que he tenido que en los últimos veinte y pico años, es que he trabajado en sectores, que me han permitido hacer sus programas, Cupones tipo la ONCE, Taller, Empresa de Limpieza, Jardinería y Control de Plagas y La Fabrica de productos de limpieza.

La verdad es que pienso muchas veces que el tema parece que no interesa mucho, pero luego miro el número de visitas y veo que no es así, no espero que me estén felicitando todo el día, pero creí que habría un poco de polémica en algunos temas, correcciones, diferencias de opinión, consejos (que los ha habido y se agradecen sinceramente) o maneras diferentes de tratar algunos temas.

Otras veces pienso que o no estoy siendo muy claro, o es demasiada información y no esta siendo procesada.

En Fin, seguiré mientras pueda con el tema.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #69  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Por supuesto que interesa el tema, precisamente la mayoría de programas para delphi son de gestión para empresas.
La mayoría de nosotros es eso lo que hemos hecho y seguimos haciendo.
Por cierto, si tú eres un burrito, entonces yo soy un escarabajo
Responder Con Cita
  #70  
Antiguo 19-06-2013
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: Dec 2003
Ubicación: Zamudio
Posts: 1.378
Poder: 16
fjcg02 Va camino a la fama
Hola José Luis,
lo que ocurre es que lo estás poniendo tan clarito que apenas quedan dudas. Aparte de la aplicación, que ya es bastante, para mí es tan importante o más la parte de gestión que estás explicando y cómo la resuelves.

No se te ocurra parar...

Gracias y un saludo
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #71  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Por supuesto que interesa el tema, precisamente la mayoría de programas para delphi son de gestión para empresas.
La mayoría de nosotros es eso lo que hemos hecho y seguimos haciendo.
Por cierto, si tú eres un burrito, entonces yo soy un escarabajo
Si Casimiro, pero en todo caso eres un Escarabajo Golia

ahora fuera de bromas, mi nivel es bastante bajo comparado con el tuyo y el de otros muchos compañeros.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #72  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por José Luis Garcí Ver Mensaje
Si Casimiro, pero en todo caso eres un Escarabajo Golia
jajaja... menos mal que no has dicho que soy un escarabajo pelotero
Imágenes Adjuntas
Tipo de Archivo: jpg índice.jpg (9,8 KB, 8 visitas)
Responder Con Cita
  #73  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Cita:
Empezado por fjcg02 Ver Mensaje
Hola José Luis,
lo que ocurre es que lo estás poniendo tan clarito que apenas quedan dudas. Aparte de la aplicación, que ya es bastante, para mí es tan importante o más la parte de gestión que estás explicando y cómo la resuelves.

No se te ocurra parar...

Gracias y un saludo


Gracias Javier, espero tengas razón y no sea por todo lo contrario.

En cuanto a parar, el tiempo dirá, en principio mi idea es terminar todas las tablas iniciales, como mucho a principio del mes que viene, luego empieza lo duro, la parte de facturación, explicare sólo esta, ya que con pocos cambios se pasan a los otros formatos, de hecho es más un aspecto más básico o técnico, según el caso, me explico,

En el caso más básico, el 90% de los campos de presupuestos, pedidos, albaranes y facturas, son iguales, de hecho se podría hacer una tabla maestra única para los cuatro formatos y una detalle igualmente, con lo que según el tipo de documento ocuparíamos unos campo o los dejaríamos en blanco.

En la más técnica (de hecho la que prefiero), podemos usar una tabla para cada tipo de formulario y puede ser una única en detalle, como una por cada cada tipo de formato (documento)

Ventajas de la primera el ahorro de tiempo y en teoría de consumo de recursos, la velocidad en principio no debería verse afectada si usamos sentencias SQL y un buen mantenimiento de la tabla. En la segunda los datos son mejor estructurados al estar en tablas independientes, lleva más tiempo de programación y es mucho más facil el seguimiento.

En mi caso he trabajado en los dos sistemas y prefiero el segundo, aunque creo que el primero es igual de válido.

Para que se entienda un poco mejor pongo un ejemplo de los campos de las más básica:

Tabla maestra
ID Integer //PRimarikey y autonumerador
DOCUMENTO varchar 20 //Nombre del documento (factura, pedido,etc)
SERIE Varchar 3 //Serie a usar
NUMERO Varchar 10 //Aquí uso una función que sólo deja los números, con lo cual la puedo pasar a integer y sumar 1, así controlo el numerador del tipo de documento
FECHA Date //Fecha de la creación del documento
MODIFICACIONES Integer // (*)
CODIGOCLIENTE Varchar 20 //Código del cliente
CODIGOCOMERCIAL Varchar 20 //Código del comercial
TOTALSUBTOTAL numeric 15-4 //Subtotal del documento, así no tengo que estar haciendo consultas sql, en ciertos casos
TOTALDTO numeric 15-4 //Total descuentos del documento, así no tengo que estar haciendo consultas sql, en ciertos casos
TOTALIMPUESTOS numeric 15-4 //Total impuestos del documento, así no tengo que estar haciendo consultas sql, en ciertos casos
TOTALCOMISIONES numeric 15-4 //Total comisiones del documento, así no tengo que estar haciendo consultas sql, en ciertos casos
PESO numeric 15-4 //Total del peso perteneciente a la factura (recuerdo que se quiere implantar obligatoriamente por la CE), que junto con la hoja de ruta (suma todos los documentos) nos dara el peso de mercancía que transportamos
NUMEROARTICULOS integer //Cantidad de unidades y no cajas transportadas
FORMAPAGO Varchar 20 //Código de la forma de pago
NUMEROALBARAN Varchar 20 // Serie más numerador si viene de un albarán (en Facturas)
NUMEROPEDIDO Varchar 20 //Serie más numerador si viene de un Pedido (en Albaranes)
NUMEROPRESUPUESTO Varchar 20 ////Serie más numerador si viene de un presupuesto (en pedidos)
COBRADA logico SN//LA factura ya ha sido cobrada va junto con la tabla cobros, donde especificamos como se cobro y el número de documento (talón, pagaré, etc) si existe
COMISIONESPAGADAS logico SN// ''Si la comisión ha sido pagada va junto con la tabla pagocomisiones, donde especificamos fecha, forma del pago, código del comercial y número de documento de pago
LIBRE Varchar 255 //(1)


* - Esto me lo pidió mi jefe hace más de 15 años y es algo que hago desde estoces, la primera vez que grabo la guardo con un 0 y añado +1 cada vez que se vuelve a grabar, a la vez grabo en una tabla de seguimiento, el usuario, la fecha, la hora y los cambios realizados, esta última tabla se borraban los datos con más de tres meses.Me pareció interesante y desde entonces lo mantengo

(1) - Aquí podemos grabar desde observaciones a pequeñas notas, la uso con una función y empieza siempre con [xxx]Donde xxx será el texto que aparece como descripción y después del corchete de cierre, el resto del texto


Esto lo pongo sólo para que entiendan la idea +-.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #74  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
jajaja... menos mal que no has dicho que soy un escarabajo pelotero
No hombre, para pelotero yo que en sus buenos días, llegue a pesar más de 150 kg.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #75  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por José Luis Garcí Ver Mensaje
No hombre, para pelotero yo que en sus buenos días, llegue a pesar más de 150 kg.
La vida del programador es muy dura, tantas horas sentado
Responder Con Cita
  #76  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
no sólo eso Casimiro, como se diría en Castellano antiguo "el buen manjar"
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"

Última edición por José Luis Garcí fecha: 19-06-2013 a las 19:17:30.
Responder Con Cita
  #77  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por José Luis Garcí Ver Mensaje
no sólo eso Casimiro, como se diría en Castellano antiguo "el buen manjar"
Es que es difícil resistirse a esa gastronomía canaria
Responder Con Cita
  #78  
Antiguo 19-06-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: May 2003
Ubicación: Las Palmas de G.C.
Posts: 1.340
Poder: 17
José Luis Garcí Va por buen camino
De la época que te hablo, era de las islas , parte de la España, Madrid, Sevilla, Hueva, Málaga, Valencia, Elche, Murcia, Barcelona, Vigo y algo de Portugal, me pegue 7 años, que de 365 días al año, me pegaba 200-260 de viaje, llegue a ir a tres oficinas en el mismo día, Las Palmas, Fuerteventura y Lanzarote, comía fijo en bares y restaurantes, así que te puedes imaginar.

Y si pensáis que guay, de eso nada, mis horarios eran , salir temprano al aeropuerto, llegar al destino, alquilar coche o coger transporte, comer ir a la oficina, cerrábamos a a las 9 en la Península 8 en Canarias, ir al hotel y muy probablemente volver a salir temprano, para ir al aeropuerto y destino a casa o a otra provincia y repetir, si era a casa, era a la oficina y no a mi casa directamente, así que pararme a disfrutar no, no lo pude hacer.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #79  
Antiguo 19-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.659
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Entonces lo que tenías era un descontrol total con las comidas, así es normal que se engorde, hay que tener cuidado y controlarse
Responder Con Cita
  #80  
Antiguo 20-06-2013
Caren Caren is offline
Registrado
 
Registrado: May 2013
Posts: 9
Poder: 0
Caren Va por buen camino
Consulta programa gestion de Jose Luis

Como esta al principio no cuesta hecharle un ojo, ademas como trabaja este señorazo.
Mi consulta es para el que ha hecho o esta haciendo este programa si tal cual esta funciona a pesar de que falten algunas cosas como el tema de facturacion y los componentes que se necesitan si siguen estando para bajar y con que nombre, encontre NewPAnelDb, SpeedButtonBC, GroupBoxJL pero no veo los DbComboBoxExt, DBIBCheckbox, DBIBMemo supongo que estaran con algun otro nombre.
Quiero dar las gracias a todos los que sabeis por poner vuestros trabajos para los que no tenemos ni idea vayamos aprendiendo un poquito.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
llamar un programa desde otro programa en un computador con dos monitores RONPABLO Varios 0 10-10-2011 19:20:51
Cargar tu programa desde otro programa rmendoza83 Varios 7 05-01-2009 20:51:33
Lanzar programa desde mi programa Pablo Carlos API de Windows 32 09-09-2004 14:56:26
Ejecutar un programa externo desde un programa de Delphi Roger_Fernandez Varios 3 02-09-2004 19:05:36
ISC ERROR CODE:335544344 I/O error for file "c:\gestion\gestion.gdb" eliasterrero Firebird e Interbase 2 28-06-2004 13:20:25


La franja horaria es GMT +2. Ahora son las 06:43:16.


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