FoxPro/Visual FoxPro - Crear Archivo de Texto

 
Vista:

Crear Archivo de Texto

Publicado por Alberto (14 intervenciones) el 16/07/2007 14:14:37
Voy a detallar lo que realmente necesito.

Tengo una Base de Datos de Personas, con los Siguientes Campos o Datos
Codigo,Cedula de Indentidad, Nombres y Apellidos, Cuenta Bancaria, Nota de Credito, Nota de Debito, Monto

Lo que deseo hacer con esa base de datos es crear un Archivo de texto con los Siguientes Campos

Nota de Debito, Nota de Credito, Cuenta Bancaria y Monto,Cedula

Estos campos son tipo Caracter Nota de Credito es de 03 Caracteres de Ancho, Cuenta Bancaria de 10 Caracteres de Ancho, Monto de 13 Numerico y 2 Decimales la idea es que me cree el achivo de la siguiente Manera.




N° Inicio Fin Nombre Longitud Tipo Descripción
1 1 2 Transacción 2 Carácter Transacción
2 3 3 Relleno 1 Carácter “
3 3 13 Cuenta 10 Numerico 9999999999
4 14 26 Monto 13 11,2 999999999999
5 1 1 Nacionalidad 1 Alfanumerico Nacionalidad
6 9 9 Cedula 9 Numerico Cedula



Resultado Archivo en T.X.T:


OP*Nro de Cta***Monto***Nro Cedula

ND 21800011110000000002000V007002564

NC 21830052410000000001000V008526532

NC 21830041850000000001000V009856247

Esta informacion me la solicita el Banco para hacer abonos a trabajadores, el problema que tengo radica principalmente en que en el Campo Monto es Numerico son 11 digitos mas 02 Decimales al final el archivo se genere sin los decimales ya que el banco lo asume de esa manera, ademas que pasa si cuando se les tenga que hacer el abono no se llegue a los 11 digitos mas 02 decimales
Ejemplo

si a una persona se le tiene que abonar 137250.56 son 08 digitos como hacer para que el archivo se genere asi 00013725056 es decir se le rellene con ceros para poder completar los 13 digitos que me pide el banco; Ademas se vea reflejado el punto decimal.
Note que ademas en el Archivo hace mencion ND=Nota de Debito es decir de que cuenta se va hacer el debito mas el Monto fijese que alli hace mencion a un monto que es
0000000002000 es decir 2000 pero esta rellenado de 9 ceros
y en NC=Nota de Credito existen 2 cuentas 0000000001000 y 0000000001000 las cuales serian 2000 que es lo que realmente se va a debitar

MIL DISCULPAS POR LA MOLESTIA, ESPERO ME ENTIENDA NUEVAMENTE LE ESTOY MUY PERO MUY AGRADECIDO POR LA AYUDA QUE ME PUEDAN FACILITAR.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Crear Archivo de Texto

Publicado por enrique (1041 intervenciones) el 17/07/2007 17:13:10
proba lo sig

a=137250.56
b=padl(allt(str(int(a))),13,"0") && 13 es los caracteres y 0 es el reemplazo

&& b sera igual a 0000000137250

si te sirve aplicalo a cada campo que necesites convertir antes de generar el TXT
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar