Colocar Negrilla en mitad del texto

Colocar Negrilla en mitad del texto

Postby leandro » Tue Jul 21, 2015 9:38 pm

Compañeros del foro tengan buena tarde.

Tengo almacenado un texto en una dbf. Pero requiero que en la mitad del texto se impriman negrillas. ejemplo

Nota: Si a la fecha del recibido de la presente notificación Usted se encuentra al día en el pago de sus cuotas, favor hacer caso omiso a esta comunicación y allegar los respectivos soportes de pago a la oficina.

Necesito darle formato al texto así como el ejemplo anterior, pero desde mi reporte.

Algún ejemplo o sugerencia?
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1480
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Wed Jul 22, 2015 9:41 am

Leandro,

Tienes ya algún ejemplo creado para probarlo con EasyReport ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby leandro » Thu Jul 23, 2015 11:56 am

Hola Antonio Gracias por Responder...

Claro que si...te adjunto el codigo

Code: Select all  Expand view

********************************
*Imprime Contrato de Compraventa
********************************
FUNCTION pNotificaCobro()

local text1,text2,nomb
uFec:=dtoc(date())
uTim:=subs(time(),1,8)

dia:=day(date())
mes:=oLamcla:vMese[month(date())]
ano:=year(date())
nDia:=Letras(dia)

vRGman:=oRsDocfac:Fields( "id_manzana" ):Value
vRGlot:=oRsDocfac:Fields( "id_lote" ):Value
vRGter:=oRsDocfac:Fields( "docu_terce" ):Value
vRGtel:=oLamcla:cNoNulo(oRsDocfac:Fields( "telefono" ):Value,"C")
vRGdir:=oLamcla:cNoNulo(oRsDocfac:Fields( "direccion" ):Value,"C")
vRGexp:=oLamcla:cNoNulo(oRsDocfac:Fields( "expedida" ):Value,"C")
vRGres:=oLamcla:cNoNulo(oRsDocfac:Fields( "residencia" ):Value,"C")
vRGmts:=oRsDocfac:Fields( "mts2" ):Value
vRGcbe:=oRsDocfac:Fields( "cedula_benefi" ):Value
vRGnbe:=oRsDocfac:Fields( "nombre_benefi" ):Value

tVar := {|| vArray:=oLamcla:pRetornoarra2(3,alltrim(vRGter),30),nomb:=vArray[2]}
EVAL( tVar )
vBar:="DIR-"+strzero(vRGman,3)+"-"+strzero(vRGlot,2)

nFecha:="Yopal, "+alltrim(str(dia))+" de "+alltrim(mes)+" de "+alltrim(str(ano))
nCedu:="C.C.No.: "+alltrim(vRGter)
nDire:="Direccion: "+alltrim(vRGdir)
nTele:="Telefono: "+alltrim(vRGtel)
nRefe:="COMPRAVENTA DE LOTE No. "+alltrim(str(vRGlot))+" Mz. "+alltrim(str(vRGman))

text1:="NOMBRE DEL GERENTE,  en mi calidad de Representante Legal de la Ciudadela La "
text1+="Ciudadela La Bendición, de manera formal y ante el caso omiso a los llamados de cobro "
text1+="verbales, me permito comunicarle que de acuerdo con el contrato de compraventa verbal "
text1+="realizado con Usted respecto de los lotes de la referencia, Usted presenta incumplimiento "
text1+="en los pagos acordados, razón por la cual se ha constituido en mora tal como lo establece el "
text1+="Art. 1608 del Código Civil que reza: La mora en los contratos bilaterales, "
text1+="EL DEUDOR ESTÁ EN MORA: 1. Cuando no ha cumplido la obligación dentro del término estipulado."

text2:="El valor que Usted adeuda a la fecha es "

text4:="De acuerdo con lo anterior le solicito ponerse al día en el pago de su obligación dentro de los tres (3) "
text4+="días hábiles siguientes al recibo de la presente notificación so pena de dar por terminado de manera "
text4+="unilateral el contrato de compraventa y exigir la entrega del inmueble."

text5:="Es pertinente recordarle que su compromiso al momento de la compra fue el de pagar la cuota mensual "
text5+="del lote objeto de compraventa dentro de los CINCO (05) primeros días de cada mes, so pena de perder "
text5+="el derecho a la posesión y tenencia del lote y demás derechos adquiridos, puesto que el incumplimiento de la "
text5+="obligación conlleva a la empresa a tomar medidas de recuperación del Lote mencionado sin derecho a "
text5+="devolver el valor de las mejoras realizadas en el predio, además, perderá los bonos en dinero "
text5+="otorgados por mera liberalidad del Vendedor."

text6:="De igual manera,  al hacer parte del  Proyecto de Vivienda Ciudadela La Bendición, se encuentra "
text6+="inmerso el pago de la acometida para el agua y la energía de su vivienda y de la colecta mensual "
text6+="por concepto de potabilización de agua y mantenimiento de redes eléctricas, pagos que a la fecha "
text6+="no se han realizado; otro hecho que constituye incumplimiento de su parte, motivo que conlleva "
text6+="a la suspensión del suministro de estos servicios."

text7:="Nota: Si a la fecha del recibido de la presente notificación Usted se encuentra al día en el pago "
text7+="de sus cuotas, favor hacer caso omiso a esta comunicación y allegar los respectivos "
text7+="soportes de pago a la oficina."


EASYREPORT oVRD NAME ".\report\NOTIFICACION.vrd" PREVIEW (.T.)

  IF oVRD:lDialogCancel = .T.
    RETURN( .F. )
  ENDIF

  PRINTAREA 1 OF oVRD;
  ITEMIDS    {101,103,104,105,106,107,109,110,111};
  ITEMVALUES {vBar,nFecha,alltrim(nomb),nCedu,nDire,nTele,nRefe,text1,text2}

  PRINTAREA 3 OF oVRD;
  ITEMIDS    {301,302,303,304};
  ITEMVALUES {text4,text5,text6,text7}

END EASYREPORT oVRD

 


Dentro de la variable text5, necesito resaltar el siguiente texto "CINCO (05) primeros días de cada mes".

Saludos
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1480
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Thu Jul 23, 2015 12:00 pm

Leandro,

Otto es un gran experto con EasyReport, igual él puede ayudarnos en esto
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby Otto » Thu Jul 23, 2015 1:35 pm

Hello,
can you please post a screenshot how the report should look.

I am sorry I do not quiet understand the problem.

If I understand well you want a different look depending on the content of the line.
If this is the problem he needs to declare a extra PRINTAREA and then a if else endif.

If A = .t.
PRINTAREA 1 OF oVRD;
ITEMIDS {101,103,104,105,106,107,109,110,111};
ITEMVALUES {vBar,nFecha,alltrim(nomb),nCedu,nDire,nTele,nRefe,text1,text2}
Else
PRINTAREA 3 OF oVRD;
ITEMIDS {101,103,104,105,106,107,109,110,111};
ITEMVALUES {vBar,nFecha,alltrim(nomb),nCedu,nDire,nTele,nRefe,text1,text2}

endif

otherwise you can change
method say in vrd.prg.

Best regards,
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 5983
Joined: Fri Oct 07, 2005 7:07 pm

Re: Colocar Negrilla en mitad del texto

Postby leandro » Thu Jul 23, 2015 8:28 pm

Otto Muchas Gracias por Responder
Otto Thanks for answering

Lo que necesito, es colocar en negrilla únicamente el texto que esta encerrado con los óvalos en rojo. No es todo
el texto únicamente el valor en letras de lo que debe el usuario.
What I need is to put in bold only the text that is enclosed with red ovals . Not all
the text only the value in words what must the user.


Espero haberme hecho entender.
I hope I made ​​my point .

Mira adjunto la imagen
Look at the picture attached

Image
subefotos

y el codigo que genera ese reporte.

Code: Select all  Expand view
********************************
*Imprime Contrato de Compraventa
********************************
FUNCTION pNotificaCobro()

local text1,text2,nomb
uFec:=dtoc(date())
uTim:=subs(time(),1,8)

dia:=day(date())
mes:=oLamcla:vMese[month(date())]
ano:=year(date())
nDia:=Letras(dia)

vRGman:=oRsDocfac:Fields( "id_manzana" ):Value
vRGlot:=oRsDocfac:Fields( "id_lote" ):Value
vRGter:=oRsDocfac:Fields( "docu_terce" ):Value
vRGtel:=oLamcla:cNoNulo(oRsDocfac:Fields( "telefono" ):Value,"C")
vRGdir:=oLamcla:cNoNulo(oRsDocfac:Fields( "direccion" ):Value,"C")
vRGexp:=oLamcla:cNoNulo(oRsDocfac:Fields( "expedida" ):Value,"C")
vRGres:=oLamcla:cNoNulo(oRsDocfac:Fields( "residencia" ):Value,"C")
vRGmts:=oRsDocfac:Fields( "mts2" ):Value
vRGcbe:=oRsDocfac:Fields( "cedula_benefi" ):Value
vRGnbe:=oRsDocfac:Fields( "nombre_benefi" ):Value

tVar := {|| vArray:=oLamcla:pRetornoarra2(3,alltrim(vRGter),30),nomb:=vArray[2]}
EVAL( tVar )
vBar:="DIR-"+strzero(vRGman,3)+"-"+strzero(vRGlot,2)

//BUSCAMOS EL VALOR DE LA DEUDA EN LA TABLA TEMPORAL PARA
//PODER GESTIONAR LAS NOTIFICACIONES DE COBRO
oVar:="SELECT * from lyma_deuda_temporal WHERE id_proyecto=1 AND id_manzana="+lTransPic(vRGman)+" AND id_lote="+lTransPic(vRGlot)
oRs7 := FW_OPENRECORDSET(oLamcla:oCon,oVar,adLockOptimistic,adOpenKeyset)
nRegistros := oRs7:RecordCount()
if nRegistros#0
  v_deuda:=oLamcla:cNoNulo(oRs7:Fields("deuda_lote"):Value,"N")
  v_servi:=oLamcla:cNoNulo(oRs7:Fields("deuda_acom"):Value,"N")
  v_acome:=oLamcla:cNoNulo(oRs7:Fields("deuda_serv"):Value,"N")
else
  v_deuda:=v_servi:=v_acome:=0
endif

vTDeuda:=alltrim(Transform(v_deuda+v_servi+v_acome,oLamcla:pic2))
nTDeuda:=letras(v_deuda+v_servi+v_acome)

nFecha:="Yopal, "+alltrim(str(dia))+" de "+alltrim(mes)+" de "+alltrim(str(ano))
nCedu:="C.C.No.: "+alltrim(vRGter)
nDire:="Direccion: "+alltrim(vRGdir)
nTele:="Telefono: "+alltrim(vRGtel)
nRefe:="COMPRAVENTA DE LOTE No. "+alltrim(str(vRGlot))+" Mz. "+alltrim(str(vRGman))

text1:="NOMBRE DEL GERENTE,  en mi calidad de Representante Legal de la Ciudadela La "
text1+="Ciudadela La Bendición, de manera formal y ante el caso omiso a los llamados de cobro "
text1+="verbales, me permito comunicarle que de acuerdo con el contrato de compraventa verbal "
text1+="realizado con Usted respecto de los lotes de la referencia, Usted presenta incumplimiento "
text1+="en los pagos acordados, razón por la cual se ha constituido en mora tal como lo establece el "
text1+="Art. 1608 del Código Civil que reza: La mora en los contratos bilaterales, "
text1+="EL DEUDOR ESTÁ EN MORA: 1. Cuando no ha cumplido la obligación dentro del término estipulado."

if v_deuda#0
  nTCredi:=" por concepto de CUOTAS: "+letras(v_deuda)+" PESOS ("+alltrim(Transform(v_deuda,oLamcla:pic2))+") M/CTE"
else
  nTCredi:=space(0)
endif

if v_acome#0
  nTAcome:=" por concepto de ACOMETIDA AGUA: "+letras(v_acome)+" PESOS ("+alltrim(Transform(v_acome,oLamcla:pic2))+") M/CTE"
else
  nTAcome:=space(0)
endif

if v_servi#0
  v_servi:=" por concepto de SERVICIOS PUBLICOS: "+letras(v_servi)+" PESOS ("+alltrim(Transform(v_servi,oLamcla:pic2))+") M/CTE"
else
  v_servi:=space(0)
endif

text2:="El valor que Usted adeuda a la fecha es "+nTDeuda+" PESOS ("+vTDeuda+") M/CTE "
text2+="por los siguientes conceptos:"+nTCredi+nTAcome+v_servi+"."

text4:="De acuerdo con lo anterior le solicito ponerse al día en el pago de su obligación dentro de los tres (3) "
text4+="días hábiles siguientes al recibo de la presente notificación so pena de dar por terminado de manera "
text4+="unilateral el contrato de compraventa y exigir la entrega del inmueble."

text5:="Es pertinente recordarle que su compromiso al momento de la compra fue el de pagar la cuota mensual "
text5+="del lote objeto de compraventa dentro de los CINCO (05) primeros días de cada mes, so pena de perder "
text5+="el derecho a la posesión y tenencia del lote y demás derechos adquiridos, puesto que el incumplimiento de la "
text5+="obligación conlleva a la empresa a tomar medidas de recuperación del Lote mencionado sin derecho a "
text5+="devolver el valor de las mejoras realizadas en el predio, además, perderá los bonos en dinero "
text5+="otorgados por mera liberalidad del Vendedor."

text6:="De igual manera,  al hacer parte del  Proyecto de Vivienda Ciudadela La Bendición, se encuentra "
text6+="inmerso el pago de la acometida para el agua y la energía de su vivienda y de la colecta mensual "
text6+="por concepto de potabilización de agua y mantenimiento de redes eléctricas, pagos que a la fecha "
text6+="no se han realizado; otro hecho que constituye incumplimiento de su parte, motivo que conlleva "
text6+="a la suspensión del suministro de estos servicios."

text7:="Nota: Si a la fecha del recibido de la presente notificación Usted se encuentra al día en el pago "
text7+="de sus cuotas, favor hacer caso omiso a esta comunicación y allegar los respectivos "
text7+="soportes de pago a la oficina."


EASYREPORT oVRD NAME ".\report\NOTIFICACION.vrd" PREVIEW (.T.)

  IF oVRD:lDialogCancel = .T.
    RETURN( .F. )
  ENDIF

  PRINTAREA 1 OF oVRD;
  ITEMIDS    {101,103,104,105,106,107,109,110,111};
  ITEMVALUES {vBar,nFecha,alltrim(nomb),nCedu,nDire,nTele,nRefe,text1,text2}

  PRINTAREA 3 OF oVRD;
  ITEMIDS    {301,302,303,304};
  ITEMVALUES {text4,text5,text6,text7}

END EASYREPORT oVRD
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1480
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Fri Jul 24, 2015 6:42 am

Leandro,

la frase que comienza con "Notificación de cobro..." está en negrita.

Donde está indicado que se vea en negrita en tu código ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby Otto » Fri Jul 24, 2015 9:35 am

Hello,
maybe we can extend method say

Pseudocode
if isrtf( cText )
oRTF:print
else
TextOut( ::oPrn:hDCOut, nRow, nCol, cText )
endif

Best regards,
Otto




METHOD Say( nRow, nCol, cText, oFont, nWidth, nClrText, nBkMode, nPad ) CLASS VRD

IF ::oPrn:hDC = 0
RETURN NIL
ENDIF

DEFAULT oFont := ::oPrn:oFont
DEFAULT nBkMode := 1
DEFAULT nPad := 0

IF oFont != nil
oFont:Activate( ::oPrn:hDCOut )
ENDIF

// 1,2 transparent or Opaque
SetbkMode( ::oPrn:hDCOut, nBkMode )

IF nClrText != NIL
#IFDEF __HARBOUR__
SetTextColor( ::oPrn:hDCOut, nClrText )
#ELSE
SetTextCol( ::oPrn:hDCOut, nClrText )
#ENDIF
ENDIF

DO CASE
CASE nPad == 1 // right
nCol := Max( 0, nCol - ::GetTextWidth( cText, oFont ) )
CASE nPad == 2 // center
nCol := Max( 0, nCol - ( ::GetTextWidth( cText, oFont ) / 2 ) )
ENDCASE
Pseudocode
if isrtf( cText )
oRTF:print
else
TextOut( ::oPrn:hDCOut, nRow, nCol, cText )
endif
IF oFont != nil
oFont:DeActivate( ::oPrn:hDCOut )
ENDIF

RETURN ( NIL )
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 5983
Joined: Fri Oct 07, 2005 7:07 pm

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Fri Jul 24, 2015 9:41 am

Otto,

if we provide a bold font to Method Say() then it should do it.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby leandro » Fri Jul 24, 2015 3:47 pm

Antonio buenos días..

En la linea REF: lo que pasa es que son los cuadros de texto diferentes, en ese caso es fácil hacerlo.

El problema es cuando es un solo párrafo y dentro del párrafo debo resaltar unas palabras en especifico.

Image
subir imagenes

Creo que no me hecho entender....

Mira el texto en este momento se muestra asi:

De igual manera, al hacer parte del Proyecto de Vivienda Ciudadela La Bendición, se encuentra inmerso el pago de la acometida para el agua y la energía de su vivienda y de la colecta mensual por concepto de potabilización de agua y mantenimiento de redes eléctricas, pagos que a la fecha no se han realizado; otro hecho que constituye incumplimiento de su parte, motivo que conlleva a la suspensión del suministro de estos servicios.

Lo que quiero es que me salga asi:


De igual manera, al hacer parte del Proyecto de Vivienda Ciudadela La Bendición, se encuentra inmerso el pago de la acometida para el agua y la energía de su vivienda y de la colecta mensual por concepto de potabilización de agua y mantenimiento de redes eléctricas, pagos que a la fecha no se han realizado; otro hecho que constituye incumplimiento de su parte, motivo que conlleva a la suspensión del suministro de estos servicios.

Saludos
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1480
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Sat Jul 25, 2015 8:32 am

Leandro,

Si localizásemos en que método se imprime ese texto, podriamos usar unas marcas en el texto para indicar negrita.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby Otto » Sat Jul 25, 2015 9:10 pm

Dear Antonio,
I think it is METHOD Say( nRow, nCol, cText, oFont, nWidth, nClrText, nBkMode, nPad ) CLASS VRD.
Best regards,
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 5983
Joined: Fri Oct 07, 2005 7:07 pm

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Sun Jul 26, 2015 3:18 am

Leandro,

hay una solución muy simple:

crea otro item con el texto que quieres poner en negrita, usando un font bold, y sobreponlo encima del texto que quieres resaltar :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Colocar Negrilla en mitad del texto

Postby Otto » Sun Jul 26, 2015 7:25 am

Dear Antonio,
but how do you get nRow, nCol for this new Item?
Best regards,
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 5983
Joined: Fri Oct 07, 2005 7:07 pm

Re: Colocar Negrilla en mitad del texto

Postby Antonio Linares » Sun Jul 26, 2015 10:16 am

Otto,

I did it manually using the EasyReport designer :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41187
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Next

Return to EasyReport, EasyDialog y EasyPreview

Who is online

Users browsing this forum: No registered users and 3 guests