PDA

Ver la Versión Completa : Facturación e Inventario


silver07
20-07-2007, 22:15:35
:confused: Hola a todos, soy un novato en Delphi (uso Delphi 7) y me gustaría que alguien me dijera dónde puedo conseguir un manual paso a paso para realizar una factura con sus respectivas tablas(maestro/detalles) y que pueda manejar un inventario de productos o artículos, aquí he podido encontrar varios ejemplos pero estan algo avanzado y yo necesito un material más explicativo.

Espero se haya entendido lo que trato de buscar. Si alguien me puede ayudar se lo agradecería.

Gracias de antemano.:(

Caral
20-07-2007, 22:25:26
Hola
Aqui: Facturacion (http://www.terawiki.clubdelphi.com/Delphi/Proyectos/?download=Facturacion_Caral.zip)
Hay un ejemplo: Facturacion_Caral.zip
Este hace lo que necesitas.
Saludos

silver07
23-07-2007, 15:21:39
:o Te agradezco el enlace caral. Hice la respectiva descarga pero esta algo avanzado para un novato como yo. No habrá otro ejemplo menos avanzado?, un poco más explicativo si es posible como dije anteriormente.:(


Gracias anticipadas.

Caral
23-07-2007, 17:09:34
Hola
Pues tratemos de empezar:
Para comenzar se necesitan crear las tablas:
Ya con la base de datos hecha, veremos, que pasa.
Sigues?
Saludos

Caral
23-07-2007, 17:22:05
Paso 2:
Crear un formulario para el ingreso de los clientes:
Para este fin trabajaremos con los componentes ADO.
Primero crearemos un form y un DataModule, asi:
Seguimos?
Saludos

silver07
23-07-2007, 17:23:48
Gracias Caral por tu tiempo, estoy utilizando Access para las tablas y la versión 7 de Delphi, tengo parte de la base de datos hecha te iré informando sobre los avance, muchas gracias de nuevo por el tiempo invertido.:)

Caral
23-07-2007, 17:28:17
Hola
Bueno casualmente, estaba tratando de guiarte en este proceso, las descargas que hay en los otros post, son el proceso paso a paso 1( las Tablas),2 (El primer form y datamodule), no es el programa completo que bajaste, te interesa seguir?.,
Saludos

silver07
23-07-2007, 17:36:10
Desde luego que me interasa bastante seguir, muchisimas gracias Caral.:D

Caral
23-07-2007, 17:45:20
Hola
Me alegro.
Come veras, ya estan las tablas, clientes, articulos, factura, tambien tenemos el form que va a ser el principal y el datamodule.
Bueno seguimos con lo demas.
Se supone que tenemos que entrar en el programa de alguna manera, verdad?
Vamos a colocar un menu, con este ingresaremos a todo, ademas colocaremos un image para que se vea bien, asi:
Seguimos.
Saludos

Caral
23-07-2007, 17:56:52
Paso 4.
Ya tenemos la entrada principal.
Ahora vamos a crear el primer form (Clientes), lo vamos a hacer de la manera mas facil, usando los comonentes basicos, luego ya podras cambiar lo que quieras (como un maestro).
Creamos un nuevo form, le puse el nombre de fclientes al primero, no inporta, a este le pondermos otro FMantClientes.
Si te fijas en el AdoTable, dandole doble click, veras todos los campos de la tabla.
Si voy despacio me dices.
Saludos

silver07
23-07-2007, 17:59:16
Perfecto, aúnque los resultados de lo que vaya haciendo te lo iré comentando al día siguiente, ya que donde trabajo no utilizan delphi de hecho nisiquiera Windows.

Muchas gracias otra vez por el tiempo invertido.:)

Caral
23-07-2007, 18:16:56
Paso 5:
Aqui vamos con la parte del form cliente:
Analizalo un poco, veras que es muy simple, por lo menos lo basico.
Seguimos.
Saludos

Caral
23-07-2007, 18:29:06
Paso 6:
Ahora crearemos el form para los articulos, igual que el de clientes:
Seguimos los mismos pasos:
Como no va a alcanzar el espacio en los cip, solo pondre los unit, solo tendras que ponerlos en la misma carpeta y añadirlos al proyecto, en project, add to project.
Aqui va el nuevo form, articulos, dale click al memo en añadir articulos pones esto:

FArticulos:=TFArticulos.Create(self);
try
FArticulos.ShowModal;
finally
FArticulos.Free;
end;
Seguimos.
Saludos

silver07
23-07-2007, 18:41:06
Estoy descargando todo el material, solo que me pondre en marcha en cuanto llegue a casa, ya que aquí en el trabajo no tengo Delphi.

Muchas gracias otra vez por tu ayuda y el tiempo invertido.:)

Caral
23-07-2007, 19:39:06
Paso 7:
Como veras ya esta hecho el form de facturacion, en este momento solo lo tengo formado, sin codigo, nada mas para que veas la forma basica de hacerlo.
Este enlazara a clientes y a articulos, luego calculara la cantidad del articulo X el precio, el descuento el impuesto y dara el total de la factura.
En el primer paso, se colocan los articulos con las cantades y su respectivo precio, se van guardando, se calculan y se imprime la factura.
Hay que tener en cuenta que se tendra que tener un consecutivo de la factura.
Al igual que el anterior copia el codigo en la carpeta y añadelo al proyecto.
Coloca esto en el memu principal en Facturacion, Facturar, dandole click.

FFactura:=TFFactura.Create(self);
try
FFactura.ShowModal;
finally
FFactura.Free;
end;
Ya tenemos algo adelantado, verdad.:D , mas facil nada, solo delphi puede hacer algo asi de rapido.
Aqui van los tres form que hemos hecho, Clientes, Articulos, Factura, los pongo otra vez por si tienes algun problema.
Saludos

Caral
23-07-2007, 21:53:46
Paso 8:
Bueno como estoy entretenido con esto, va el siguiente avance:
Ya tenemos la factura, ya enlazamos a los clientes y a los articulos, ahora necesitamos que al enlazarlos nos traiga la informacion que solicitamos al form de facturar.
Para empezar agrega un par de clientes y un par de articulos a las tablas, con esto veras los resultados.
Bien:
En el form de Clientes (FMantClientes).
Vamos a agregar unas lineas de codigo en Public:

public
{ Public declarations }
Cod_Cliente: string;
NombreCliente: string;
end;
Aqui estoy diciendo que me mantenga estas variables publicas, ya que las usare en el form de Factura, como ves las declare en un form y las usare en otro.
En el mismo from Clientes (FMantClientes).
En el boton de cerrar:

Cod_Cliente := ADOTable1CodCliente.AsString;
NombreCliente := ADOTable1NombreCliente.AsString;
Close;
Aqui estoy diciendo que cuando cierre, quiero estas variables declaradas en relacion a la tabla.

Lo mismo vamos a hacer en el form Articulos (FArticulos).
En Public:

public
{ Public declarations }
Cod_Parte: string;
Descripcion: string;
end;
Y en el boton cerrar:

Cod_Parte := ADOTable1CodProducto.AsString;
Descripcion := ADOTable1Descripcion.AsString;
Close;
Creo que esta muy claro, si no pregunta.:D
Hecho esto, aqui esta el form de factura con los cambios necesarios, no hace mucho mas de momento, ya lo hara.:D
Saludos

ariefez
23-07-2007, 23:39:36
Excelente!!!, estas cosas son las que motivan a uno ha aportar, almenos con un granito,

aunque no lo he leido (ya q no uso access) me parece interesante, al igual que los otros tutoriales que haz expuesto.

Saludos...

Caral
23-07-2007, 23:42:03
Paso 9:
Me distraje haciendo cositas asi que cambie la tabla Factura un poco, bueno bastante, por eso la subo de nuevo.
En el siguiente post pongo el form de factura ya bastante adelantado, solo faltarian los totales e imprimir, creo, ya me diras.
Aqui esta la base de datos:
Saludos

Caral
23-07-2007, 23:43:27
Hola
Gracias ariefez
Me alegro que te guste, ojala le sirva a muchos.
Saludos

Caral
24-07-2007, 00:19:59
Paso 10:
Aqui esta el form de factura mas adelantado.
Como trabaja:
Al entrar en el form, este automaticamente genera un numero de factura nuevo.
La fecha de la factura se pone al dia.
Se busca el cliente con el boton buscar, con solo cerrar el form de clientes el codigo y el nombre de este se colocan en el form de facturar.
Lo mismo se hace con el articulo, se busca.
Se coloca la cantidad de este articulo, el precio unitario, en la casillas pequeñas de descuento e impuesto se colocan los porcentajes, este los calculara solo en la parte de abajo a la hora de guardar.
Una vez hecho esto se puede seguir colocando otros articulos con sus precios, descuentos etc, y guardarlos, esta sera la lista de la factura (varios articulos).
Con solo pasar a la parte de Resumen de factura, se podra ver cada uno de los articulos.
Para ver una factura ya hecha, simplemente se pone el numero de esta y se pasa al resumen.
Bueno, ya seguiremos.
Saludos

silver07
24-07-2007, 17:39:06
Muchas gracias Caral a esto me referia, anoche trabaje con los mantenimientos y el diseño de la factura pués hoy en cuanto llegue a casa continuaré aplicando los pasos 9 y 10, de momento todo marcha bien. La verdad que este proyecto me ha inspirado.:D


Muchas Gracias otra vez por tu tiempo.:p

Caral
24-07-2007, 17:51:30
Paso 11:
Bueno ya el form de factura tiene cara, ya genera los totales, en base a la suma de los articulos que se le coloquen.
Hay que recordar que solo se necesita incluir al cliente y las condiciones una vez, en cuanto a los articulos, pues seran las veces que sea necesario, dependiendo de la venta, por supuesto.
Bueno aqui esta el form ya casi listo, lo unico que faltaria seria imprimir la factura, esto lo hariamos con Qreport, que es el que conozco.
Espero te este sirviendo y a alguien mas.
Saludos

Caral
24-07-2007, 18:37:21
Paso 12:
Creacion de la factura imprimida en qreport.
Bueno con este paso creo que ya esta mas o menos listo, por lo menos ya se puede entender un poco como funciona esto de la facturacion, hay otras, muchas otras maneras de hacer esto, pero he querido hacerlo lo mas sencillo posible para que se pueda empezar con delphi.
Espero haber cubierto tu inquietud silver07 y que te sirva a ti y a otros esta pequeña practica.
Saludos

tenporal
25-07-2007, 20:09:36
Saludos Caral, estaba viendo tu tutorial de facturacion y tengo una pregunta

¿ En donde debo instalar la carpeta con la bd?
¿ En donde debo tener el proyecto de delphi ?

Caral
25-07-2007, 20:14:17
Hola
Pues en realidad no me he puesto a pensar en eso, en cualquier lado supongo.
Simplemente en el Datamodule en el adoconnection le das la direccion que quieras.
Hay otra manera y es un archivo ini, si necesitas te lo explico.
Saludos

Caral
25-07-2007, 22:16:23
Hola
Como hay una pregunta del amigo tenporal con relacion a donde colocar la Base de datos y el Programa, he querido dar la opción de hacerlo con un archivo .ini como lo indique antes, me parece practico, asi que va.
Para empezar hay que hacer un archivo ini, Abrimos el block de notas y se coloca esto:


Path="C:\Facturacion.MDB"
[Logon]
Auto="No"
Login=""
Pass=""

Se guarda en este caso con el nombre de BDatos.ini

Como ven aqui le estoy diciendo que la base de datos esta en C:\ y ya sabemos que se llama Facturacion.mdb, si queremos colocar la base de datos en otra carpeta o sub carpeta simplemente le cambiamos la direccion, ejemplo:

[BD]
Path="C:\Programa\MiCarpeta\Facturacion.MDB"
[Logon]
Auto="No"
Login=""
Pass=""
Como ven el resto queda igual, simple verdad.
Ahora vamos a hacer que nuestro programa lea este archivo.
Hay que tener en cuenta que el archivo BDatos.ini, tendra que estar en la misma carpeta que el programa.
Ahora abrimos el programa en Delphi, abrimos el datamodule, en el evento OnCreate del datamodule, ponemos esto:

procedure TDataModule1.DataModuleCreate(Sender: TObject);// esta parte ya la pone Delphi
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');// aqui esta el nombre del archino 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;
Ahora en el uses del mismo DataModule ponemos esto:
[B]uses
SysUtils, Classes, DB, IniFiles, ADODB, Forms, Dialogs;
Y a funcionar, ahora cada vez que arranque el programa, buscara primero el archivo BDatos.ini, y se conectara a la base de datos, podeis poner la base de datos donde querais, siempre la encontrara, incluso en red, recordad poner el archivo ini en la misma carpeta donde este el programa.
Espero les sirva, la explicacion.
Saludos

Caral
26-07-2007, 00:11:27
Hola
Siguiendo mi politica de poner los archivos aqui esta el archivo ini, para que lo veáis, por si tenéis dudas.
Saludos

tenporal
28-07-2007, 19:35:26
Otra pregunta amigo Caral

¿Como evitas que el usuario teclee 2 articulos diferentes asignandole la misma clave del articulo?

Por ejemplo:

articulo: 1
Descripcion: Teclado

articulo: 1
Descripcion: Raton

En el modulo de articulos teclee estos 2 registros con la misma clave y me lo acepto sin problemas, pero no tendria aqui llaves duplicadas ¿como resuelvo esto?

Saludos

Caral
28-07-2007, 19:40:06
Hola
Supongo que te refieres al form de articulos, lo que quieres hacer es que el ID del articulo no se repita o no tenga uno igual en la tabla, si es asi.
Ya te respondo, un momento.
Saludos

Caral
28-07-2007, 20:58:52
Hola
Bueno aqui estoy respondiendo a la duda de Tenporal, los cambios los vamos ha hacer en el From de articulos (FArticulos).
Primero:
El Componente DBNavigator1.
A este le quitamos las opciones de Post, Cancel, Refresh., no las necesitamos.
Segundo:
Colocamos un ADOQuery (AdoQuery1) en el from, lo conectamos igual que el adotable1 que tenemos al datamodule en connection (DataModule1.ADOConnection1).
Tercero:
Colocamos un Boton (Guardar) en el Form y en el evento OnClick, ponemos esto:

If DBEdit1.Text <> '' then
Begin
ADOQuery1.Active:= false;
ADOQuery1.SQL.Text:= 'Select CodProducto from Articulos Where CodProducto = :cod ';
ADOQuery1.Parameters.ParamByName('cod').Value := DBEdit1.Text;
AdoQuery1.Active := true;
IF ADOQuery1CodProducto.AsString = DBEdit1.Text then
begin
MessageDlg('Código ya existe, favor seleccionar otro',mtError,[mbOK],0);
DBEdit1.Text:= '';
end
else
If ADOTable1.State = dsInsert then
begin
ADOTable1.Post;
ADOTable1.Active:= False;
ADOTable1.Active := true;
end;
end;
Creo que esta facil de entender.
Primero se verifica que el dbedit1 este vacio
Se coloca una consulta al query1 y se busca que, si el parametro es igual al dbedit1 salga un mensaje de lo contrario se grabe en la tabla y se refresque, siempre que la tabla este en modo insert (dsInsert).
Espero sea esto lo que preguntabas y te sirva.
Saludos

tenporal
31-07-2007, 05:34:23
Lo que vi en el diseño de la base de datos en access, es que no tienes un campo definido como llave primaria.

¿cual seria la mejor manera de normalizar la base de datos de access, con llave primaria o sin llave primaria?:confused:

Ahora otra pregunta,

Si en vez de guardar el articulo, el usuario da click en el boton cancelar
¿no queda un registro en blanco en la tabla de articulos?:confused:

Saludos a tod@s.

Caral
31-07-2007, 17:45:58
Hola
1- Access obliga a colocar llaves primarias sobre todo cuando se hacen consultas ligadas, de lo contrario, no lo amerita.
2- Cambiando la colocacion de la sentencia, se puede hacer lo que dices, estudialo un poco, lo entenderas, no deberia crear un registro en blanco.
Recuerda que esta ayuda, no es perfecta, como sabes soy novato, como muchos, solo intento ayudar y dar una luz de lo que se puede hacer.
Saludos

novato03
12-08-2007, 14:37:49
Hola amigo Caral, me descargue el programa paso a paso que hiciste y para analizarlo, pero cuando lo ejecuto me presenta el error cuando le presiono el botón guardar.

Project Factura.exe raised exception class EOleExcenption with message 'El número de valores de consulta y el ´numero de campos de destino son diferentes'¨. Process stopped. Use Step or Run to continue.

Caral
12-08-2007, 15:24:33
Hola novato03
Esto pasa cuando intentas guardar datos incompletos.
En el caso del programa en el form factura, si los edits y combobox que estan en blanco no contienen informacion, genera el error, la logica dice que es una factura y por lo tanto se tiene que formalizar.
Rellena todos los campos vacíos y resulto.
Espero que sea este el problema que me mencionas.
Saludos

novato03
12-08-2007, 16:01:13
Acabo de completar todos los campos y sale el mismo error.:(


Project Factura.exe raised exception class EOleException with message 'El número de valores de consulta y el número de campos de destino son diferentes'. Process stopped. Use Step or Run to continue.

Caral
12-08-2007, 16:12:47
Hola
No tiene por que pasar.
Has tocado algo?
El programa lo tengo y funciona perfectamente, es muy raro.
Revisa el codigo del boton guardar, tiene que estar asi:

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)+', '+DateToStr(DateTimePicker1.DateTime)+', '+QuotedStr(ECodCliente.Text)+ ', '+QuotedStr(ECodArticulo.Text)+ ', '+QuotedStr(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.ExecSQL;

end;
Como veras el insert recorre los campos y el value revisa los datos.
Copia y pega este codigo, tiene que funcionar.
Saludos

novato03
12-08-2007, 16:32:16
El código esta de la siguiente manera...


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)+', '+DateToStr(DateTimePicker1.DateTime)+', '+QuotedStr(ECodCliente.Text)+ ', '+QuotedStr(ECodArticulo.Text)+ ', '+QuotedStr(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.ExecSQL;
end;

y la tabla de factura, contiene los siguientes campos:


CodFactura (Número)
Fecha
CodCliente (Número)
Terminos (Texto)
OrdenCompra (Texto)
CodVendedor (Texto)
Excento (si/no)
TasaImpuesto (Número)
Anulada (si/no)
MntEnvio (Fecha)
MntSubTotal (Número)
MntDescuento (Número)
MntImpuesto (Número)
MntTotal (Número)
MntContado (Número)
MntCheque (Número)
MntTarjeta (Número)
MntOtros (Número)
Saldo (Número)
Pagado (Número)
CodArticulo (Número)

Caral
12-08-2007, 16:50:08
Hola
El paso 9, explica lo que te esta pasando.
La tabla fue modificada en ese paso, quedo asi:
http://img211.imageshack.us/img211/6753/facturanj7.th.png
Campos:
CodFactura (Número)
Fecha
CodCliente (Número)
CodArticulo (Texto)
Descripcion (Texto)
Cantidad (Numero)
Terminos (Texto)
OrdenCompra (Texto)
CodVendedor (Texto)
Excento (Numero)
TasaImpuesto (Número)
MntSubTotal (Número)
MntDescuento (Número)
MntImpuesto (Número)
MntTotal (Número)

Revisalo, si tienes mas dudas, ya las resolveremos.
Saludos

novato03
12-08-2007, 17:29:01
Muchas gracias amigo Caral. Ya esta resuelto:)
Pero tengo que digitar el precio y el impuesto.
:rolleyes:No habrá alguna forma de hacerlo automático?


Gracias por la ayuda Amigo Caral...:)

novato03
12-08-2007, 17:41:07
Disculpa amigo Caral, pero el unit(UFClientes) cuando ejecuto el programa me presenta el siguiente error:


Cannot open file "C:\UFClientes.pas". El sistema no puede hallar el archivo especificado.

Para resolver el problema he tenido que colocar ese form en disco "C:\ " libremente solo así funciona.

Hay alguna forma resolver este problema?:confused:

Gracias anticipadas...

Caral
12-08-2007, 17:51:14
Hola
No entiendo el porque.
Simple genera el proyecto de nuevo, lo ubicas y ya.
No hace falta poner el precio, esta en cero.
Si quieres que el precio aparezca en el edit, solo sigue los pasos que se siguieron para traer el codigo, es lo mismo.
Te recomiento que leas bien el tutorial, a veces queremos correr demasiado, yo tambien soy asi.
Saludos

Caral
16-08-2007, 00:42:57
Hola
Para seguir con esto y en base a preguntas que me han hecho, vamos a poner un login al proyecto.
Para empezar hay que añadir una tabla a la base de datos:

Tabla: Usuarios
Campos:
CodUsuario, Testo(15)
Nombre, Texto(50)
Clave, Texto(50)

Vamos a añadir el form (FLogin) que esta en el archivo.
Vamos a Project, options, y vamos a cambiar en Main Form, por FLogin, con esto el programa buscara primero este form.

Bueno, creo que no tendreis problemas.
Saludos

advicur
24-08-2007, 21:20:42
Que tal!!
He tratado de bajar el tutorial de http://www.terawiki.clubdelphi.com/Delphi-Win32/Ejemplos/ pero me marca error hay algun otro lugar de donde lo pueda bajar.

Saludos y de antemano gracias.

Caral
24-08-2007, 21:26:11
Hola
Hay algunos problemas con la dirección, se están solucionando, no puedo confirmar para cuando este listo, pero se esta en eso.
Saludos

spia
25-08-2007, 00:26:32
Tengo Una Duda Yo Utilizo Delphi 8.0 Pero No Trae Los Componentes Ado Alguien Me Puede Decir Donde Los Encuentro Gracias

adan12
30-05-2012, 03:22:48
Hola quien me puede pasar la base de datos completa para poder facturar y llenar cxp , cxc

Casimiro Notevi
30-05-2012, 10:07:16
Está aquí (http://www.terawiki.clubdelphi.com/Delphi/Proyectos/?download=Facturacion_Caral.zip) el proyecto completo.

jtaquichiri
02-10-2013, 22:19:20
Estaviendo el programa y esta bueno, quiero probarlo pero me falta otros componente aperte del que pusiste; lo quiero compilar en Delphi 7 y me pide Standardprinter

Casimiro Notevi
02-10-2013, 22:30:49
Como no te expliques claramente, nadie te va a entender :confused:

edwin55
22-10-2015, 19:45:33
Saludos necesito ese programa, favor responder.....