by jbrita » Tue Mar 06, 2012 12:17 pm
Amigo prueba asi:
oCol:= oLbx:AddCol()
oCol:bStrData:= { || IF (!EMPTY(SQLField(cRec_Gen,"Rec_Femisi")),Date2Txt(SQLField(cRec_Gen,"Rec_Femisi")),"")}
oCol:cHeader := "Fecha de"+CRLF+"Emision"
oCol:nWidth := 80
oCol:nHeadStrAlign:= AL_CENTER
/*
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
° Funcion: Date2Txt()
Argumentos: 6
Argumento 1: La fecha a convertir variable tipo fecha
Argumento 2: Tipo de nombre del día 1=Corto, 2=Largo Ejem: 1=Sáb, 2=Sábado
Argumento 3: Tipo de nombre del mes 1=Corto, 2=Largo Ejem: 1=Ene, 2=Enero
Argumento 4: Tipo de año 1=2 dígitos, 2=4 dígitos Ejem: 1=99, 2=1999
Argumento 5: Separador entre el día de la semana y la fecha
Argumento 6: separador entre dia y mes
Argumento 7: separador entre mes y año
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
*/
FUNCTION Date2Txt(dFecha, nTipdia, nTipMes, nTipAmo, cSepDia, cSepDM, cSepMA)
LOCAL aNomMes:= {"Enero", "Febrero", "Marzo", "Abril", "Mayo", ;
"Junio", "Julio", "Agosto", "Septiembre", "Octubre", ;
"Noviembre", "Diciembre"}
LOCAL aNomDia:= {"Domingo", "Lunes", "Martes", "Míercoles", ;
"Jueves", "Viernes", "Sábado"}
LOCAL La_Fecha := ""
IF EMPTY(dFecha)
dFecha := DATE()
ENDIF
IF EMPTY(nTipDia)
nTipDia := 0
ENDIF
IF EMPTY(nTipMes)
nTipMes := 1
ENDIF
IF EMPTY(nTipAmo)
nTipAmo := 2
ENDIF
IF cSepDia == NIL
cSepDia := SPACE(1)
ENDIF
IF cSepDM == NIL
cSepDM := "/"
ENDIF
IF cSepMA == NIL
cSepMA := "/"
ENDIF
DO CASE
CASE nTipdia == 1
La_Fecha:= LEFT(aNomDia[DOW(dFecha)], 3) + cSepDia
CASE nTipdia == 2
La_Fecha:= aNomDia[DOW(dFecha)] + cSepDia
ENDCASE
La_Fecha:= La_Fecha + STR(DAY(dFecha), 2, 0)
DO CASE
CASE nTipMes == 1
La_Fecha:= La_Fecha + cSepDM + LEFT(aNomMes[MONTH(dFecha)], 3)
CASE nTipMes == 2
La_Fecha:= La_Fecha + cSepDM + aNomMes[MONTH(dFecha)]
ENDCASE
DO CASE
CASE nTipAmo == 1
La_Fecha:= La_Fecha + cSepMA + RIGHT(STR(YEAR(dFecha), 4, 0), 2)
CASE nTipAmo == 2
La_Fecha:= La_Fecha + cSepMA + STR(YEAR(dFecha), 4, 0)
ENDCASE
RETURN (La_Fecha)
Saludos