Embarcadero

Autor Tema: Tutorial (Como hacer un programa de Facturacion)  (Leído 53704 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Con este tutorial lo que se pretende es enseñar lo elementos básicos para hacer un programa de facturación sencillo.
Para este vamos a usar una base de datos ACCESS y componentes de sencillo uso de Delphi.
Empecemos con la base de datos:
Todo programa de facturación contiene elementos en común, como son:
Artículos, clientes, usuarios, facturas.
Asi empezaremos haciendo estas tablas directamente en access.
Articulos:


Clientes:


Usuarios:


Factura:



Una vez que terminemos con las tablas guardaremos nuestra base de datos en el directorio que deseemos, recordemos que lo necesitaremos para hacer la conexión con delphi.
Ya teniendo la tablas listas empezaremos con delphi, enlazando cada una y generando el código para que funcione nuestro programa.
En la segunda parte seguiremos con delphi.
Saludos
« Última Modificación: 27 de marzo de 2012, 19:51:25 por Caral »

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Seguimos con:
Conexión a la base de datos:
Para esto vamos a usar los componentes ADO, vamos a usar un datamodule y haremos un archivo INI que nos servirá para indicar donde esta nuestra base de datos.
Empecemos con delphi:
Generamos un nuevo proyecto, nos aparecerá un nuevo form (este sera el principal).
Vamos a File, New,data module y le damos click.

Esto nos generara un form DataModule para nuestro proyecto.
Vamos a la paleta ADO,  seleccionamos un ADOConnection y lo colocamos en el datamodule, quedaria asi:


Le damos doble click a nuestro ADOConnection y nos saldrá esta pantalla:


Ahora presionamos el botón Build y nos saldra esta otra pantalla:


Una vez con esta pantalla seleccionamos la opción marcada Jet 4 y le damos next, nos saltara la otra pestaña:


Seleccionamos la primera opción y Presionamos el botón con tres puntos, con este buscaremos donde guardamos nuestra base de datos.
Una vez ubicada, la seccionamos y presionamos el boton Test connection, si es correcta nos saldra un mensaje indicandolo.
 
Con esto ya tenemos la primera parte lista, ya hicimos la conexion con nuestra base de datos.
Seguimos.....
saludos
PD: Acordaros de ir guardando el proyecto... :D
« Última Modificación: 03 de enero de 2009, 14:40:24 por Caral »

Follow members gave a thank to your post:


Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Seguimos con la conexión:
Como en este caso usaremos un archivo INI para la conexion necesitamos añadir al uses del datamodule el uses IniFiles.
para esto seleccionemos el unit del datamodule y le añadimos dicho uses, quedaria asi:
[delphi]
  uses
  SysUtils, Classes, DB, IniFiles, ADODB, Forms, Dialogs;[/delphi]

Nos posicionamos en el datamodule en la parte blanca y le damos doble click, esto nos generara el evento DataModuleCreate.
Ahora pondremos este cogido que es el que nos servirá para que el archivo INI nos encuentre la base de datos:
[delphi]
procedure TDataModule1.DataModuleCreate(Sender: TObject);
Var BaseDeDatos, ConStr : String;
    IniFile: TIniFile;
begin
   // Obtiene la ruta y el nombre de la base de datos
   IniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'BDatos.ini');
   BasedeDatos := IniFile.ReadString('BD','Path','');
   If BasedeDatos = '' then ShowMessage('Error al cargar Base de Datos');
   ConStr := 'Provider=Microsoft.Jet.OLEDB.4.0;'+
             'Data Source='+BaseDeDatos+';'+
             'Persist Security Info=False;'+
             'Jet OLEDB:Database Password=admin';
   ADOConnection1.ConnectionString := ConStr;
   ADOConnection1.Open;

end;
[/delphi]
Como veis el evento buscara en el archivo INI que en este caso se llama BDatos.ini y enlazara la base de datos con la dirección de este archivo.
Para hacerlo un poco mas sencillo os dejo el archivo ini, solamente se tendria que cambiar la diereccion que se encuentra en PATH y listo.
Saludos
« Última Modificación: 29 de abril de 2011, 12:14:11 por Caral »

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Ya tenemos nuestra base de datos enlazada al ADOConnection y cuando arranque este se conectara al archivo INI que buscara la dirección de la base de datos.
Bueno sigamos con el primer form que se creo al iniciar delphi (form1).
Aquí vamos a hacer una pantalla inicial, sencilla, que nos ligue con las demás opciones que tendrá nuestro programa.
Coloquemos le a este form un MainMenu, que esta el la primera paleta (standard).
Le damos doble click y nos saldra una pequeña pantalla.
Ahi es donde vamos a colocar el menu de nuestro programa en este caso seran estas:

Luego nos servirá para enlazar cada uno de los forms que vallamos creando.
Bien una vez que tenemos listo este primer form lo guardamos, es buena idea ponerle un nombre adecuado a cada form en este caso en la propiedad Name le pondremos: FClientes, puede ser cualquier otro, el que os guste.

Seguimos......
Saludos
« Última Modificación: 03 de enero de 2009, 15:50:26 por Caral »

Follow members gave a thank to your post:


Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Ya tenemos nuestro primer form, el principal, pronto regresaremos para hacer que sea este el que nos guié.
Vamos a hacer nuestro segundo form, seguimos el mismo procedimiento:
File, New, Form.
Esto nos creara nuestro segundo form.
Vamos a hacer nuestro primer enlace, este va a ser con la tabla Clientes.
Aqui podremos añadir, modificar, etc, cada cliente de nuestro programa.
Primero vamos a añadir a este nuevo form un ADOTable.
En su propiedad Connection le escribimos: DataModule1.ADOConnection1
Esto guiara al adotable hacia el datamodule y a su vez hacia el adoconnection.
Ahora en la propiedad TableName buscaremos la tabla Clientes.
Demosle doble click al adotable y nos mostrara una pequeña pantalla.
Con el raton derecho sobre esta pantallita, nos saldra la opcion ADD fields, le damos click y nos saldra una nueva pantalla que contendra todos los campos de la tabla Clientes, presionamos OK y quedaran grabados en esta pantallita.
Vamos a seleccionar uno a uno de estos campos y arrastrarlos al nuevo form.
Colocadlos de manera que quede presentable, que sirva para trabajar sobre ellos, conservando cierto orden.
Veréis que se ha colocado automáticamente un DataSource, este sera el enlace de cada uno de los campos.
Ahora necesitaremos un componente que nos sirva para poder enlazar y trabajar sobre la tabla clientes.
De la paleta dataControls seleccionamos un DBNavigator y lo arrastramos a nuestro form.
En la propiedad Datasource del dbnavigator buscaremos el datasource que se creo automáticamente, así de simple quedara enlazado.
Vamos a activar nuestra tabla con el programa.
Nos posicionamos en el form y le damos doble click, esto nos creara el evento FormCreate y colocamos esto:
[delphi] ADOTable1.Active:=  True;[/delphi]
Bueno, como en todo form, siempre tenemos que cerrerlo, asi que coloquemos un boton en el from, en su propiedad Caption ponemos Salir, le damos doble click y ponemos esto:
[delphi] Close;[/delphi]
Ahora como siempre le pondremos un nombre que nos interese a este nuevo form, en su propiedad Name pondremos: FMantClientes y lo guardamos.
Si, ese es todo el codigo que necesitamos de momento, asi de facil, bueno, quedaria asi:


Ya tenemos nuestro segundo form, vamos bien.
Seguimos....
Saludos
« Última Modificación: 03 de enero de 2009, 16:30:58 por Caral »

Follow members gave a thank to your post:


Desconectado Delphius

  • Administrador
  • ******
  • Thank You
  • -Given: 217
  • -Receive: 338
  • Mensajes: 4,211
  • Calificaciones: +373/-2
  • Sexo: Masculino
  • ¿El polimorfismo seguirá siendo parte de mi vida?
Espero que me disculpes por este comentario "off-topic".
Veo con mucho agrado que le estás dando mucho empuje a esta sección amigo. Te lo agradezco, ya que estaba dejándola un poco de lado porque estoy preparando nuevo material para la sección :).

Saludos,
Como redactar mensajes - Uso de etiquetas

Se enseña por amor a los demás, se aprende por amor a la verdad
Cuanto más se busca la verdad, sin llegar a la perfección, anhelamos saber lo que falta

San Agustín

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Espero que me disculpes por este comentario "off-topic".
Veo con mucho agrado que le estás dando mucho empuje a esta sección amigo. Te lo agradezco, ya que estaba dejándola un poco de lado porque estoy preparando nuevo material para la sección :).

Saludos,

Como me va a molestar amigo, aquí todos somos uno u uno para todos. (y)
Saludos

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Seguimos......
Vamos a hacer nuestro tercer form para el manejo de los Artículos.
Como siempre:
File, New, Form
Empecemos cambiándole el nombre, a este lo llamaremos: FArticulos, lo podemos guardar o esperar y luego guardarlo.
Igual que con el form anterior Clientes, le pondremos un AdoTable, un dbnavigator, un botón y seguimos los mismos pasos que en el form clientes.
Este quedaría así:


Seguimos.......
Saludos

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Seguimos...
Vamos a hacer un nuevo Form, Facturación.
Como siempre:
File, New, Form.
Le vamos a cambiar el nombre por FFactura y lo guardamos.
A este nuevo from le vamos a colocar los siguientes componentes:
1-PageControl
En este vamos a hacer dos TabSheet.
Al primero lo llamaremos factura y al segundo Resumen de Factura
En El primero (factura) colocaremos estos componentes:
13- Edits.
1-Combobox.
1-DatetimePicker
4- botones
3-ADOQuery
2-Datasource
Quedaria asi:


En el segundo (resumen de Factura) colocaremos estos:
1-DBGrid
4-Edits
2-Botones
1.DBNavigator (a este le quitaremos todas las opciones excepto Delete.)
Quedaria asi:


Seguiremos con el codigo de este form........
Saludos
« Última Modificación: 04 de enero de 2009, 12:37:02 por Caral »

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Seguimos...
Primero vamos a conectar nuestros componentes ADO.
Vamos a ir a la propiedad Connection de cada uno de los ADOQuery y ponemos esto: DataModule1.ADOConnection1
Ahora conectamos el primer Datasource al Adoquery1 y el segundo al AdoQuery2.
Bien, vamos con código:
En el evento Oncreate del form ponemos esto:
[delphi]
   procedure TFFactura.FormCreate(Sender: TObject);
begin
   DateTimePicker1.Date:= Now;
   ADOQuery1.SQL.Text:='SELECT DISTINCTROW Max([Factura].[CodFactura])AS [CodFacturaa]FROM Factura';
   ADOQuery1.Open;
   ECodFactura.Text:= IntToStr(ADOQuery1.Fields[0].AsInteger+1);
end;[/delphi]
Vamos a poner el primer codigo del boton buscar (el que esta en la imagen a la par de clientes).
Este seria:
[delphi]
procedure TFFactura.Button3Click(Sender: TObject);
begin
    FMantClientes:=TFMantClientes.Create(self);
   try
    FMantClientes.ShowModal;
   finally
   If FMantClientes.Cod_Cliente <> '' then
   ECodCliente.Text := FMantClientes.Cod_Cliente;
   Label2.Caption:= QuotedStr(FMantClientes. NombreCliente);
   FMantClientes.Free;
   end;

end;[/delphi]
Ahora el segundo boton Buscar, esta vez Articulos:
[delphi]
procedure TFFactura.Button4Click(Sender: TObject);
begin
     FArticulos:=TFArticulos.Create(self);
   try
    FArticulos.ShowModal;
   finally
   If FArticulos.Cod_Parte <> '' then
   ECodArticulo.Text := FArticulos.Cod_Parte;
   Label9.Caption:= QuotedStr(FArticulos.Descripcion);
      FArticulos.Free;
    end;
end;[/delphi]
Vamos con el boton Guardar, ese es el que hará los cálculos y los guardara:
[delphi]
procedure TFFactura.Button1Click(Sender: TObject);
Var
  a,b,c,d,e,f,g,h : real;
begin
 a:= StrTofloat(ECantidad.Text);
 b:= StrTofloat(EMonto.Text);
 d:= StrTofloat(EDesc.Text);
 f:= StrTofloat(EImp.Text);
 c:= a * b;
 e:= c * d / 100;
 g:= (c - e) * f / 100;
 h:= c - e + g;
 ESTotal.Text:= floatToStr(c);
 EDescuento.Text:=floatToStr(e);
 EImpuesto.Text:=floatToStr(g);
 ETotal.Text:= floatToStr(Round(h));
 AdoQuery1.SQL.Text := 'Insert into Factura Values ('+QuotedStr(ECodFactura.Text)+', :fecha, '+QuotedStr(ECodCliente.Text)+ ', '+QuotedStr(ECodArticulo.Text)+ ', '+Label9.Caption+ ', '+QuotedStr(ECantidad.Text)+ ', '+QuotedStr(ComboBox1.Text)+', '+QuotedStr(EOCompra.Text)+', '+
                        QuotedStr(EVendedor.Text)+', '+QuotedStr(EDesc.Text)+', '+QuotedStr(EImp.Text)+', '+QuotedStr(ESTotal.Text)+', '+QuotedStr(EDescuento.Text)+ ', '+QuotedStr(EImpuesto.Text)+ ', '+QuotedStr(ETotal.Text)+')';
 AdoQuery1.Parameters.ParamByName('fecha').Value:= DateToStr(DateTimePicker1.Date);
 AdoQuery1.ExecSQL;

end;[/delphi]
El boton Salir:
[delphi]
procedure TFFactura.Button2Click(Sender: TObject);
begin
  Close;
end;[/delphi]
En el segundo TabSheet tenemos el boton imprimir, este lo veremos posteriormente.
El DBNavigator (que solo muestra Delete) lo enlazaremos al datasource2
Ahora en el evento OnShow del segundo tabsheet pondremos este codigo:
[delphi]
procedure TFFactura.TabSheet2Show(Sender: TObject);
begin
   ADOQuery2.SQL.Text:= 'Select * From Factura';
   ADOQuery2.SQL.Add('WHERE CodFactura = '+ECodFactura.Text);
   ADOQuery2.Open;
   ADOQuery3.SQL.Text:= 'SELECT DISTINCTROW Sum([Factura].[MntSubTotal]) AS [SubTotal], Sum([Factura].[MntDescuento]) AS [Descuento],'+
                        ' Sum([Factura].[MntImpuesto]) AS [Impuesto], Sum([Factura].[MntTotal]) AS [Total]'+
                        ' FROM Factura ';
   ADOQuery3.SQL.Add('WHERE Factura.CodFactura = '+ECodFactura.Text);
   AdoQuery3.Open;
   ESSubTotal.Text := ADOQuery3.Fields[0].AsString;
   ESDescuento.Text := ADOQuery3.Fields[1].AsString;
   ESImpuesto.Text := ADOQuery3.Fields[2].AsString;
   ETotalFact.Text := ADOQuery3.Fields[3].AsString;
end;[/delphi]
Y en el evento OnExit del mismo pondremos esto:
[delphi]
procedure TFFactura.TabSheet2Exit(Sender: TObject);
begin
   ADOQuery2.Close;
end;
[/delphi]
Vamos a añadir los units que necesitaremos enlazar asi:
[delphi]
implementation

uses UFMantClientes, UArticulos, UQRFactura;[/delphi]

Seguimos......
Saludos



« Última Modificación: 04 de enero de 2009, 12:43:32 por Caral »

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Ahora vamos con el siguiente y ultimo form. Login.
Ya sabemos el proceso para crearlo, a este lo llamaremos: FLogin
A este nuevo form le pondremos los siguientes componentes:
1-ADOQuery
2-Label
2-Edit
2-Botones
Quedaria asi:


le vamos a poner codigo:
Primero crearemos unas variables:
[delphi]
var
  FLogin: TFLogin;
  Cuenta : integer;
  Usuario, Nombre : String;
  LoginOK : boolean;
    [/delphi]
En el evento OnCreate:
[delphi]
procedure TFLogin.FormCreate(Sender: TObject);
begin
    Cuenta := 0;
   Usuario := '';
   Nombre := '';
end;
[/delphi]
En el boton OK:
[delphi]
procedure TFLogin.BtnOkClick(Sender: TObject);
begin
   LoginOK := False;
   ADLogin.Parameters.ParamByName('nom').Value:= EUsuario.Text;
   ADLogin.Active:= True;
   EUsuario.Text:= ADLogin.Fields[1].AsString;
   If ADLogin.RecordCount < 1 then
    Begin
       Cuenta := Cuenta + 1;
       MessageDlg('Usuario no encontrado',mtError, [mbOK], 0);
       EUsuario.Text := '';
       EClave.Text := '';
       ADLogin.Active := False;
       If Cuenta = 3 then Close;
    end
   else
       If ADLoginClave.AsString = EClave.Text then
        Begin
           LoginOk := True;
           Nombre := ADLoginNombre.AsString;
           ADLogin.Active := False;
           FClientes:=TFClientes.Create(self);
           try
           FLogin.Visible:= False;
           FClientes.ShowModal;
           finally
           FClientes.Free;
           end;
           Close;
        end
     else
         Begin
           Cuenta := Cuenta + 1;
           MessageDlg('Clave Inválida',mtError, [mbOK], 0);
           EClave.Text := '';
           ADLogin.Active := False;
           If Cuenta = 3 then Close;
         end;

end;
[/delphi]
Y en el boton cancelar:
[delphi]
procedure TFLogin.BtnCancelClick(Sender: TObject);
begin
  LoginOK :=False;
   Close;
end;[/delphi]
Ahora nos posicionamos en el adoquery y en su propiedad SQL String nos saldra una pantalla y ponemos esto:
Código: sql [Seleccionar]

SELECT CodUsuario, Nombre, Clave  FROM Usuarios WHERE
CodUsuario = nom

Bueno, con esto ya tenemos todos los forms y las conexiones listas, solo nos falta terminar algunos detalles.
Seguimos....
Saludos

Follow members gave a thank to your post:


Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Bueno, ya tenemos todo lo que necesitamos listo para trabajar, solo algunos ajuste y a andar.
Primero:
Os acordais del primer Form, el que serviría de principal y contiene un MainMenu.
Vamos a enlazarlo con los demos forms.
Demosle dobleclick al mainmenu.
Nos saldran las opciones que teniamos.
Vamos a darle dobleclick a la primera: Clientes y ponemos esto:
Código: delphi [Seleccionar]

procedure TFClientes.AadirClientes1Click(Sender: TObject);
begin
    FMantClientes:=TFMantClientes.Create(self);
   try
    FMantClientes.ShowModal;
   finally
    FMantClientes.Free;
   end;
end;

A la segunda: Articulos
Código: delphi [Seleccionar]

procedure TFClientes.AadirArticulos1Click(Sender: TObject);
begin
    FArticulos:=TFArticulos.Create(self);
   try
    FArticulos.ShowModal;
   finally
    FArticulos.Free;
   end;
end;

A la tercera: Facturacion
Código: delphi [Seleccionar]

   FFactura:=TFFactura.Create(self);
   try
    FFactura.ShowModal;
   finally
    FFactura.Free;
   end;

Y a Salir:
Código: delphi [Seleccionar]

procedure TFClientes.Salir1Click(Sender: TObject);
begin
  Close;
end;

Ahora que tenemos enlazado todo nos falta que el programa arranque primero en el form Login.
Nos vamos al unit del proyecto y cambiamos el orden de acceso asi:
Código: delphi [Seleccionar]

begin
  Application.Initialize;
  Application.CreateForm(TFLogin, FLogin);
  Application.CreateForm(TFClientes, FClientes);
  Application.CreateForm(TDataModule1, DataModule1);
  Application.Run;
end.

Ya estamos listos para ejecutar y probar el programa.
Espero os sirva de ejemplo y os guste.
Como siempre el código fuente de este programa lo dejo por si tenéis alguna duda.
Saludos

AQUI ESTA LOS ARCHIVOS COMPLETOS EN LA ZONA DE DESCARGA

Listo el Tutorial de facturacion 2, espero os sirva y os guste. (y)
Aqui os dejo el enlace.

Listo el Turorial de Facturacion 3, espero os guste. (y)
Aquí os lo dejo.

« Última Modificación: 23 de febrero de 2012, 15:24:50 por Caral »

Follow members gave a thank to your post:


Desconectado sinh

  • Registrado
  • *
  • Thank You
  • -Given: 0
  • -Receive: 1
  • Mensajes: 1
  • Calificaciones: +3/-0
  • Sexo: Masculino
Pos mi compa, neta que casi nadie pone su codigo al publico, lo felicito, para aquellos que como yoo, nos falta logica para programar, SOLO SE QUE NO SE NADA.

sale mi compa  ahi tamos y aledante

Follow members gave a thank to your post:


Desconectado ®k2

  • Registrado
  • *
  • Thank You
  • -Given: 0
  • -Receive: 1
  • Mensajes: 4
  • Calificaciones: +2/-0
  • Sexo: Masculino
Que Viva Caral y DA... 8-|

Follow members gave a thank to your post:


Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Muchas gracias por vuestros comentarios.
Saludos

Follow members gave a thank to your post:


Desconectado ®k2

  • Registrado
  • *
  • Thank You
  • -Given: 0
  • -Receive: 1
  • Mensajes: 4
  • Calificaciones: +2/-0
  • Sexo: Masculino
Hola Caral, me alegra mucho que tomes la iniciativa de ayudar a los novatos como yo... estoy realizando este ejercicio pero hay algunas variables o Names que no logro reconocer; si no es mucha molestia quisiera que me orientes en ese sentido; las variables o Names en cuestion son las siguientes:
Cod_Cliente, Cod_Parte... Gracias por Adelantado (QDT)

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
Ya casi no me acuerdo de esto, en realidad no se por que use estos nombres de archivos, mas sabiendo que en la bd no estan.
Debe ser algun error que cometi, si tienes algun problema simplemente quitales la raya del medio ( _ ) , deja solo los nombres (CodCliente, CodParte).
Me comentas como te fue.
Saludos

Desconectado Delphius

  • Administrador
  • ******
  • Thank You
  • -Given: 217
  • -Receive: 338
  • Mensajes: 4,211
  • Calificaciones: +373/-2
  • Sexo: Masculino
  • ¿El polimorfismo seguirá siendo parte de mi vida?
Hola Carlos,
Casi jurarí­a que tení­a una copia del archivo zip. Intento descomprimir el zip y me indica que el archivo está dañado.

¿Por casualidad no tienes una copia?

En el código que expones aquí­ no se ve, o al menos yo no distingo, un Cod_Cliente, Cod_Parte... y me extraña lo que comenta ®k2.

Saludos,
Como redactar mensajes - Uso de etiquetas

Se enseña por amor a los demás, se aprende por amor a la verdad
Cuanto más se busca la verdad, sin llegar a la perfección, anhelamos saber lo que falta

San Agustín

Desconectado Caral

  • Administrador
  • ******
  • Thank You
  • -Given: 225
  • -Receive: 321
  • Mensajes: 3,507
  • Calificaciones: +364/-4
  • Sexo: Masculino
  • Siempre Novato
Hola
No me tenéis paciencia. :D :D
Ayer limpie el ordenador y reinstale casi todo pero me faltaron algunas cosas.
Ya me acorde de las variables.
Estas variables son las que se usan para traer los datos desde otros forms, son importantes, no se pueden cambiar.
Creo que este es el archivo original, si no es, me lo avisáis.
Saludos
PD: Cambie el otro por si estaba corrupto, ya esta bien.
« Última Modificación: 18 de mayo de 2009, 14:35:56 por Caral »

Follow members gave a thank to your post:


Desconectado Delphius

  • Administrador
  • ******
  • Thank You
  • -Given: 217
  • -Receive: 338
  • Mensajes: 4,211
  • Calificaciones: +373/-2
  • Sexo: Masculino
  • ¿El polimorfismo seguirá siendo parte de mi vida?
Disculpa la molestia amigo.

Ahora si descomprimió.
Si o sí­, a lo largo de esta semana me voy a poner a hacer copias de seguridad de los hilos, y archivos que se vayan haciendo en el foro Manuales y Tutoriales. Mas vale prevenir...
No se que hice con los anteriores backups :s que tení­a en mi disco... Tal vez borré la carpeta en el último mantenimiento. Ahora los haré en cds ;)

Saludos,

Como redactar mensajes - Uso de etiquetas

Se enseña por amor a los demás, se aprende por amor a la verdad
Cuanto más se busca la verdad, sin llegar a la perfección, anhelamos saber lo que falta

San Agustín

Follow members gave a thank to your post: