Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit TeamsCambios recientesSend via e-MailImprimirEnlace permanente × Tabla de Contenidos Control Calendario Calendario Introducción Control del calendario por script Control Calendario Calendario Introducción El calendario se puede poner como llamada directa, por lo que sale el diseño por defecto interno del frame, que no se puede cambiar nada y ninguno de los atributos indicados hace algo. O se pone como content, utilizando el viewmode, entonces sí aplica todos los atributos que vamos a explicar. A continuación se describen los controles y atributos necesarios para crear la función de calendario. Atributos Descripción viewmode=“calendarview”Esto es para el mes viewmode=”week”Esto es para cambiar al modo calendario semanal forecolor:#FFFFFFColor de fuente bgcolor:#DFDFDFColor de fondo por defecto cell-forecolor:#ffffffColor de fuente de la celda cell-border-width:2Tamaño del borde de cada línea cell-align:center Alineación de la celda align:center Alineación general del control fontsize:12 Tamaño de la fuente cell-selected-bgcolor:#00000000 Color del fondo de la celda seleccionada cell-selected-border-color:#00CC00 Color del borde de la celda seleccionada weekdays-bgcolor:#00000000Color de los días weekdays-forecolor:#333333,#999999,#999999,#999999,#999999,#999999,#999999Color de la fuente de cada uno de los días: DOMINGO, LUNES, MARTES, MIÉRCOLES, JUEVES, VIERNES, SÁBADO weekdays-fontsize:5Tamaño de los días de la semana weekdays-longname:false Qué tipo de nombre sale, si el tipo largo o el tipo corto weekdays-align:topleft Alineación de esos nombres border-width:2Tamaño de los bordes textfont-bold:truePara hacerlo negrita bold cell-border-color:#00000000Color borde de la celda page-swipe:falseSi permite que se desplace los meses o las semanas con el dedo. Por defecto true border:falseSi tiene borde o no week-start-hour:0Inicio de la hora que se indica en el día, ya que los días se dividen entre 0 a 23:59 week-end-hour:1 cell-bgcolor=“##FLD_MAP_COLOREMPRESA##“ Color de la celda cell-other-month-bgcolor=”##FLD_MAP_COLORCALENDARIO_NOMESACTUAL##“Color de la celda de los días del otro mes que no es el mes seleccionado cell-selected-forecolor=”##FLD_MAP_COLOREMPRESA##“ Color de la fuente del día seleccionado. Permite width y height para poner el tamaño, lo ideal sería poner todos los atributos en una clase y asociársela Ejemplo de cómo se llama: <prop name="Calend" type="Z" cell-bgcolor="##FLD_MAP_COLOREMPRESA##" onchange="refresh" cell-other-month-bgcolor="##FLD_MAP_COLORCALENDARIO_NOMESACTUAL##" cell-selected-forecolor="##FLD_MAP_COLOREMPRESA##" contents="calendario" width="495px" height="240px" class="z_calendario" viewmode="calendarview" /> Control del calendario por script this.Contents("DatosCalendario”).variables(“moveto”)=“prev” Para ir al mes o semana anterior this.Contents(”DatosCalendario“).variables(“moveto”)=“next” Para ir al mes o semana posterior Este nodo se ejecuta cuando se selecciona un día del mes <ondateselected refresh="true" show-wait-dialog="false" refresh-owner="MAP_FASE,DatosPoblaciones,MAP_FECHA,MAP_TITLE_NAMES_MES,MAP_TITLE_ANO,MAP_RUTA"> <action name="runscript"> <param name="DATEVALUE" /> <param name="TIMEVALUE" /> <param name="EVENTVALUE" /> <script language="vbscript"> Esto es para coger el valor de la fecha del día seleccionado thisDataColl.OwnerObject("MAP_FECHA")=DATEVALUE thisDataColl.OwnerObject("MAP_TITLE_NAMES_MES")=ucase(cstr(monthname(DATEVALUE))) thisDataColl.OwnerObject("MAP_TITLE_ANO")= cstr(year(DATEVALUE)) </script> </action> </ondateselected> Este nodo se ejecuta cuando se cambia el mes <onpageselected refresh="true" show-wait-dialog="false" refresh-owner="MAP_FASE,DatosPoblaciones,MAP_FECHA,MAP_TITLE_NAMES_MES,MAP_TITLE_ANO,MAP_RUTA"> <action name="runscript"> <param name="DATEVALUE" /> <param name="TIMEVALUE" /> <param name="EVENTVALUE" /> <script language="vbscript"> thisDataColl.OwnerObject("MAP_FECHA")= DATEVALUE thisDataColl.OwnerObject("MAP_TITLE_NAMES_MES")=ucase(cstr(monthname(DATEVALUE))) thisDataColl.OwnerObject("MAP_TITLE_ANO")= cstr(year(DATEVALUE)) </script> </action> </onpageselected> Esto se ejecuta cuando se va a pintar el calendario, por cada celda del mismo. Si es script es pesado, puede tardar mucho. Este nodo es anterior a los atributos que posteriormente se hicieron. Se recomienda no utilizar si se requiere velocidad. <oncelldraw> <action name="runscript"> <param name="CELLDATE" /> <script language="VBScript"> Poner el script que sea. </script> </action> </oncelldraw>