2012-06-12 17 views
18

In Crystal Report utilizzando Visual Studio 2010, sto cercando una per creare una formula per il seguente scenario:Imbottitura un numero fisso con zeri fino ad una lunghezza fissa

x = numero qualsiasi (numero fisso di 8 cifre , posso essere minore o maggiore)

Se lunghezza di X è inferiore a 8, pad la quantità di 0 di richiesta nella parte anteriore per rendere la sua lunghezza 8.

Es:

X = 123 
Result of Formula should be 0000

X = 9 
Result of Formula should be 00000009 

Qualsiasi aiuto sarà apprezzato. Grazie in anticipo.

+0

Solo una nota: non è possibile avere un numero con zeri iniziali, poiché gli zeri a sinistra non hanno uno scopo matematico. Dovrai convertire il tuo numero in una stringa prima che possa essere reso. –

+0

Hmm .. sì ha senso in quello che dici. Potrebbe anche usare una stringa allora. – aMazing

+1

L'ho preso Destra ("0000" & {MyFieldToPad}, 8) Funziona perfettamente come voglio. – aMazing

risposta

10

ho preso

Right("0000"&{MyFieldToPad},8) 

funziona perfettamente come voglio io.

23

ToText({table.field},"00000000") è più succinta.

+0

Anche questo funziona. – aMazing

+5

Non capisco cosa sia stato così ambiguo, vago, incompleto, eccessivamente ampio nella domanda che è contrassegnato come CHIUSO. Seriamente, i ragazzi che hanno capito il punto della domanda hanno già risposto e ora che senso ha fare per chiuderlo. – aMazing

+4

Sono d'accordo con te, aMazing. – craig