Pagina 2 di 2

Re: convertire numeri a testo, per assegni ?

Inviato: giovedì 20 agosto 2009, 9:48
da stregatto
cha ha senso fino a un certo punto, in quanto la rogna è a livello di stampa sul bollettino. Ne ho fatto un paio di versioni e il lavoro lungo è quello di adattarsi alla stampante.

.g.

Re: convertire numeri a testo, per assegni ?

Inviato: giovedì 20 agosto 2009, 9:54
da Alessio73
stregatto ha scritto: la rogna è a livello di stampa sul bollettino
Immagino che la difficoltà sia nella stampa, ma forse insieme potremmo individuare il modello di stampante che da meno problemi.
stregatto ha scritto: Ne ho fatto un paio di versioni e il lavoro lungo è quello di adattarsi alla stampante
Tu come fai, stampi su un bollettino premarcato o su carta bianca?
Potresti darmi una base su cui lavorare senza farmi rifare tutto?

Re: convertire numeri a testo, per assegni ?

Inviato: giovedì 20 agosto 2009, 17:03
da stregatto
fai prima a rifare tutto, non c'è poi molto.

campo nominativo
campi indirizzi

campi causale

campi importo numerico e letterale
campi cc/p

poi crei 2 campi multipli calcolati (per importo e cc/p) con una dozzina di ripezioni per popolare i quadratini relativi al ccp e importo, in maniera tale che ogni ripetizione prenda una lettera di importo e ccp.
La rottura è l'adattamento grafico con la base (il modello ccp).

.g.

Re: convertire numeri a testo, per assegni ?

Inviato: lunedì 23 gennaio 2012, 13:51
da maverna
Ho scritto una funzione inerente l'argomento.

ESEMPIO
INPUT: 123456789,12
OUTPUT: CENTOVENTITREMILIONIQUATTROCENTOCINQUANTASEIMILASETTECENTOOTTANTANOVE/12

Nota: la funzione opera correttamente con numeri inferiori al miliardo e con un massimo di due decimali, ma può essere facilmente modificata per superare questi limiti.


ImportoInLettere(NUMERO)

Consenti
([NF=Mezzo(NumeroATestoJ ( NUMERO+1000000000,0001;0;0);2;12);
G1=Mezzo(NF;1;3);G2=Mezzo(NF;4;3);
C1=Mezzo(NF;1;1);C2=Mezzo(NF;2;1);C3=Mezzo(NF;3;1);
C4=Mezzo(NF;4;1);C5=Mezzo(NF;5;1);C6=Mezzo(NF;6;1);
C7=Mezzo(NF;7;1);C8=Mezzo(NF;8;1);C9=Mezzo(NF;9;1);
ST="UNO DUE TRE QUATTRO CINQUE SEI SETTE OTTO NOVE DIECI UNDICI DODICI TREDICI QUATTORDICI QUINDICI SEDICI DICIASSETTE DICIOTTO DICIANNOVE VENT TRENT QUARANT CINQUANT SESSANT SETTANT OTTANT NOVANT"] ;

Casi(G1="000";"";G1="001";"UNMILIONE";Casi(C1>1;ParoleinMezzo(ST;C1;1)) & Casi(C1>0;"CENTO") & Casi(C2=1;ParoleinMezzo(ST;C3+10;1); Casi(C2>1;ParoleinMezzo(ST;C2 + 18;1) & Casi(or(C3=1;C3=8);"";C2=2;"I";"A")) & Casi(C3>0;ParoleinMezzo(ST;C3;1))) & "MILIONI") &

Casi(G2="000";"";G2="001";"MILLE";Casi (C4>1;ParoleinMezzo(ST;C4;1)) & Casi(C4>0;"CENTO") & Casi(C5=1;ParoleinMezzo(ST;C6+10;1); Casi(C5>1;ParoleinMezzo(ST;C5 + 18;1) & Casi (or(C6=1;C6=8);"";C5=2;"I";"A")) & Casi(C6>0;ParoleinMezzo(ST;C6;1))) & "MILA") &

Casi(Intero(NUMERO)=0;"ZERO";Casi (C7>1;ParoleinMezzo(ST;C7;1)) & Casi(C7>0; "CENTO") & Casi(C8=1;ParoleinMezzo(ST;C9+10;1); Casi(C8>1;ParoleinMezzo(ST;C8 + 18;1) & Casi(or(C9=1;C9=8);"";C8=2;"I";"A")) & Casi(C9>0;ParoleinMezzo(ST;C9;1)))) & "/" & Mezzo(NF;11;2))

Re: convertire numeri a testo, per assegni ?

Inviato: martedì 22 ottobre 2019, 17:52
da antoniomacosx
Puoi uppare un esempio?