Colocar el texto en varias líneas

En algunas ocasiones necesitamos que se coloque el texto impreso en dos líneas; tal es el caso de las descripciones de artículos el IMPORTE CON LETRA, en los que aparece cortada la información.
En esta ocasión, nos enfocaremos en el Importe con Letra como ejemplo. vamos a colocar las primeras 15 letras en una línea y el resto en la línea siguiente.

Por default, el importe con letra se encuentra en una línea como esta (En CONFIGURACIÓN–PERSONALIZACIÓN–FORMATOS DEL SISTEMA–TICKET).

 Visual Basic |  copy code |? 
1
cSalida = cSalida & Letra( Round( Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")), 2 ), Trim(rstMoneda("Descrip")), True,rstMoneda("Nombre") ) & cLineaNueva
2

Lo que vamos a hacer es guardar el importe con letra en una variable llamada “ImporteLetra” y después dividir el texto en dos partes a través de la función Mid(texto, inicio, largo)

 Visual Basic |  copy code |? 
1
ImporteLetra = cSalida & Letra( Round( Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")), 2 ), Trim(rstMoneda("Descrip")), True,rstMoneda("Nombre") ) & cLineaNueva
2
    cSalida = Mid(ImporteLetra, 1, 15)
3
    cSalida = Mid(ImporteLetra, 16, 20)
4

Guarda y hace la prueba

En el caso de la remisión es algo parecido

 Visual Basic |  copy code |? 
1
         FontBold Falso
2
         FontItalic Falso
3
         ColorDeFuente 0
4
         Say 2.78125 + Row( Incremento ), 1.041667, rstArticulo("Descrip")

Lo que se hará es agregar una condición IF, la función Mid(texto, Inicio, Largo) y colocar todo este bloque de código cerca de la línea “Incremento = Incremento + 1″ . El resultado quedará así:

 Visual Basic |  copy code |? 
01
         EstableceFuente "Verdana",9.75
02
         FontBold Falso
03
         FontItalic Falso
04
         ColorDeFuente 0
05
         Say 2.78125 + Row( Incremento ), 1.041667, Mid(rstArticulo("Descrip"),1,50)
06
        if Len( rstArticulo("Descrip") ) > 50 Then
07
         Incremento = Incremento + 1
08
         Say 2.78125 + Row( Incremento ), 1.041667, Mid(rstArticulo("Descrip"),41,50)  
09
        end if 
10
 
11
        Incremento = Incremento + 1
12
        rstPartidas.MoveNext
13
    Wend
14

Guardamos y hacemos la prueba

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *


Time limit is exhausted. Please reload CAPTCHA.