Estructura de Factura en PDF

Estimados, alguien tendrá un básico del armado de una factura (no importa el país) en PDF, es para tomar de base ya que veo lleva bastante tiempo acomodar lineas etc. Hay varios ejemplos del uso del PDF de @Javier_Menendez e incluso un video en youtube de otro usuario [https://www.youtube.com/watch?v=F3p6xmCzyy0&t=763s&ab_channel=BrahamCreation2go] pero seria más rápido partir de una base de código, si existe alguna, desde ya muchas gracias.

1 Like

hola ejemplo de factura electronica generada xojo pdfdocument.
de lo mas complicado seria alinear cantidades correctamente a la derecha, yo lo solucione con puro codigo de xojo con algo muy simple de 2 lineas de codigo,incluyendo fontsize de 5 hasta fontsize muy grandes,cuando le veas te dara risa y me criticas, a mi me funciona
todo correcto se alinean bien las cantidades
yo solo hice esto, en un metodo dentro de un modulo, una linea muy larga pero efectiva

dim vkkual as string =_
“000,000,000,013,012,011,011,009,008,007,006,005,004,003,002,001,000,000|”+_
“000,000,000,016,015,013,013,011,010,009,008,007,006,005,003,002,001,000|”+_
“000,000,000,023,021,020,018,016,015,013,011,010,008,006,005,003,001,000|”+_
“000,000,000,031,029,026,024,022,020,018,015,013,011,009,006,004,002,000|”+_
“000,000,000,039,036,033,030,028,025,022,019,017,014,011,008,005,003,000|”+_
“000,000,000,047,043,040,037,033,030,027,023,020,016,013,010,007,003,000|”+_
“000,000,000,054,050,047,043,039,035,031,027,023,019,015,012,008,004,000|”+_
“000,000,000,062,058,053,049,044,040,035,031,027,022,018,014,009,004,000|”+_
“000,000,000,070,065,060,055,050,045,040,035,030,025,020,015,010,005,000|”+_
“000,000,000,078,072,067,061,055,050,044,039,033,028,022,016,011,005,000|”+_
“000,000,000,086,080,074,068,061,055,049,043,037,031,025,019,012,006,000|”+_
“000,000,000,093,087,080,073,067,060,053,046,040,033,026,020,013,007,000|”+_
“000,000,000,101,094,086,079,072,065,057,050,043,036,029,021,014,007,000|”+_
“000,000,000,109,101,093,085,078,070,062,055,047,039,031,023,016,008,000|”+_
“000,000,000,117,108,100,092,084,076,067,058,050,042,033,025,017,008,000|”+_
“000,000,000,125,116,107,098,089,080,070,062,053,044,036,027,018,009,000|”+_
“000,000,000,132,122,113,104,094,085,075,065,056,047,038,028,019,010,000|”+_
“000,000,000,140,130,120,110,100,090,080,070,060,050,040,030,020,010,000|”+_
“000,000,000,148,137,127,116,106,095,085,074,064,053,043,032,021,010,000|”+_
“000,000,000,155,144,133,122,111,100,088,077,066,055,044,033,022,011,000|”+_
“000,000,000,163,151,140,128,117,105,093,082,070,058,046,034,023,011,000|”+_
“000,000,000,171,159,147,135,122,110,098,086,073,060,048,036,024,012,000|”
'8 ,9 ,0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,0 ,1 ,2 ,3 ,4 ,5
return vkkual.NthField(“|”,vfonz)

es todo lo que hice para lograrlo

me llevo alguna horas pensando, pero al final lo logre.
no se si aqui se permita que me des tu correo
y te mando el codigo por mail, es gratis me daria gusto ayudarte a ti.
generar un pdf en xojo es muy simple.

y esta otra para cantidades con comas, se alinean bien en un pdf
dim vkkual as string =_
“010,009,xxx,008,008,007,xxx,006,006,005,xxx,004,004,003,xxx,002,002,001,xxx,000,000|”+_
“020,019,xxx,017,016,015,xxx,013,012,011,xxx,009,008,007,xxx,005,004,003,xxx,001,000|”+_
“030,028,xxx,025,024,022,xxx,019,018,016,xxx,013,012,010,xxx,008,006,004,xxx,002,000|”+_
“039,035,xxx,032,030,028,xxx,025,023,021,xxx,018,016,013,xxx,010,008,006,xxx,002,000|”+_
“048,045,xxx,042,039,036,xxx,032,029,026,xxx,022,019,017,xxx,012,010,007,xxx,003,000|”+_
“060,056,xxx,050,046,043,xxx,038,035,032,xxx,027,024,020,xxx,015,012,008,xxx,004,000|”+_
“070,064,xxx,059,055,051,xxx,045,041,037,xxx,031,027,023,xxx,018,014,010,xxx,004,000|”+_
“077,073,xxx,066,062,057,xxx,051,046,042,xxx,035,031,027,xxx,020,015,011,xxx,004,000|”+_
“085,080,xxx,075,070,065,xxx,057,052,047,xxx,040,035,030,xxx,022,017,012,xxx,005,000|”+_
“097,090,xxx,083,077,072,xxx,064,058,052,xxx,044,039,033,xxx,025,019,013,xxx,005,000|”+_
“106,100,xxx,092,086,080,xxx,070,064,058,xxx,049,043,037,xxx,028,022,016,xxx,006,000|”+_
“119,112,xxx,101,094,087,xxx,077,071,064,xxx,054,047,040,xxx,030,024,017,xxx,007,000|”+_
“128,121,xxx,108,101,094,xxx,083,076,069,xxx,057,050,043,xxx,032,025,018,xxx,007,000|”+_
“136,128,xxx,117,109,101,xxx,090,082,074,xxx,063,055,047,xxx,035,027,020,xxx,008,000|”+_
“142,135,xxx,125,116,108,xxx,095,087,079,xxx,065,057,049,xxx,037,029,021,xxx,008,000|”+_
“160,150,www,133,124,115,xxx,102,093,085,xxx,071,062,052,xxx,040,031,022,xxx,009,000|”+_
“163,153,xxx,142,133,123,xxx,109,099,090,xxx,076,066,057,xxx,042,033,024,xxx,009,000|”+_
“175,165,xxx,150,140,130,xxx,115,105,095,xxx,080,070,060,xxx,045,035,025,xxx,010,000|”+_
“184,170,xxx,158,148,137,xxx,121,111,100,xxx,084,074,063,xxx,047,036,026,xxx,010,000|”+_
“187,177,xxx,167,156,145,xxx,128,117,106,xxx,090,078,067,xxx,050,039,028,xxx,011,000|”+_
“197,187,xxx,175,163,152,xxx,134,123,111,xxx,094,082,070,xxx,053,041,030,xxx,012,000|”+_
“220,200,xxx,183,171,158,xxx,140,128,116,xxx,098,086,073,xxx,055,042,031,xxx,013,000|”
'16 ,15 ,0 ,14 ,13 ,12 ,0 ,11 ,10 ,9 ,0 ,8 ,7 ,6 ,0 ,5 ,4 ,3 ,0 ,2 ,1
’ 001,002,003,004,005,006,007,008,009,010,011,012,013,014,015,016,017,018,019,020,021,
return vkkual.NthField(“|”,vfonz)

@sortugado_nacalle gracias por tu respuesta, cualquier cosa te escribo por privado y paso email.
No me quedo claro ese método como lo llamo en el pdfdocument? con alguna propiedad, y la variable vfonz que sería?

Pues yo use el DynaPDF, tiene funciones para linear el texto.

Si compraste el Omegabundle, alli viene Valentina Reports, hacer esos reportes de facturas en sumamente facil usando el diseñador que permite hacer preview, luego puedes generar el pdf desde Xojo

Amigo yo he desarrollado un pequeño sistema de facturacion, en el cual creo en pdf mis facturas, si aun requieres ejemplos, escribeme, saludos

Hola @jorge_takushi si tienes algún ejemplo siempre es bienvenido, desde ya muchas gracias!