a

Aplicación de calendario con impresión color de botón y el evento por Dia

En este ejemplo vamos a ver cómo introducir botón de impresión en la aplicación Calendario, y también un ejemplo de la funcionalidad automática de colores a los acontecimientos del pasado, presente y futuro.

   

Creación de aplicación

1. La tabla que se utiliza para ejecutar el calendario será la tabla "events".

CREATE TABLE `events` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(64) DEFAULT NULL,
`description` varchar(128) DEFAULT NULL,
`start_date` date DEFAULT NULL,
`start_time` time DEFAULT NULL,
`end_date` date DEFAULT NULL,
`end_time` time DEFAULT NULL,
`recurrent` varchar(1) DEFAULT NULL,
`period` varchar(1) DEFAULT NULL,
`users` varchar(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;

   

2. Seleccione los campos de la tabla que se utilizarán en la aplicación.
Artículos con "*" son requeridos para crear la aplicación. Los otros campos se utilizan solamente para información de Agenda.

Opciones:

  • Id: Se utiliza para identificar el registro, seleccione el campo de clave principal de esta tabla. (Int (11))
  • Título: Se utiliza para almacenar el objeto de cada actividad que se muestra en la aplicación. ((VARCHAR (50))
  • Fecha de inicio: la fecha de inicio de la actividad se grabará. * (Fecha o de fecha y hora)
  • Hora de inicio: Se registrará la hora de inicio de la actividad. * (Fecha o de fecha y hora)
  • Fecha de finalización: fecha de finalización de la actividad se grabará. * (Fecha o de fecha y hora)
  • Hora de finalización: Se registrará la hora de finalización de la actividad. * (Fecha o de fecha y hora)
  • Recurrencia: Se utiliza para indicar si el evento se repite en un mes, semana o día. (Int) (1)
  • Período: Se utiliza para indicar el tipo de reptição recurrencia: el mes, semana o día. (Int) (1)

Nota: Si usted tiene un campo de tipo datetime en la base de datos, puede listar la fecha y hora de opciones utilizando el mismo campo de fecha y hora a partir de la base de datos. La aplicación se llevará a los dos valores y concatenar ellos antes de guardar en la base de datos.

   

 

Insertando el botón Imprimir

3. Visite el elemento "Imprimir" en el menú de la aplicación.

   

4. Active la opción: "Mostrar botón Imprimir".

   

 

Creación de una función para ejemplificar el uso de colores en los eventos

Para demostrar esta característica, vamos a crear una función php para insertar automáticamente los registros de las fechas de hoy, ayer y mañana, cada vez que se ejecuta la aplicación.

5. En primer lugar vamos a crear una función de PHP, acceder a, en el menú de la aplicación, elemento: "Programación >> Métodos PHP >> >> Nuevo mémétodo".

   

6. El nombre del método será "check_date" y tendrá el siguiente código:

// Always insert record for TODAY, YESTERDAY and TOMORROW!
 
//$ontem  = (date("Y")). "-" . (date("m")). "-" . (date("d") - 1);
              $hoje   = date("Y-m-d");
              $ontem = date('Y-m-d', strtotime("-1 day",strtotime($hoje)));
              $amanha = date('Y-m-d', strtotime("+1 day",strtotime($hoje)));
            
// This macro will protect the value passed as paramenter according with the used database.
$ontem  = sc_sql_protect($ontem, "date");
              $hoje   = sc_sql_protect($hoje, "date");
              $amanha = sc_sql_protect($amanha, "date");
// Capturing value to check.
if($hoje==1){
              
              }
              sc_lookup(yesterday,"select count(*) from events where start_date = $ontem");
              sc_lookup(today,"select count(*) from events where start_date = $hoje");
              sc_lookup(tomorrow,"select count(*) from events where start_date = $amanha");
              
              // Insert Record event has nothing yesterday.
if(empty({yesterday[0][0]})){
              
              if($this->Ini->nm_tpbanco == 'pdo_sqlsrv') {
              
              sc_exec_sql("
              SET DATEFORMAT ymd;
              insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users) 
              values 
              ('Event','Description',$ontem,NULL,$ontem,NULL,'N','D','')");
              
              } else {
              
              sc_exec_sql("
              insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users) 
              values 
              ('Event','Description',$ontem,NULL,$ontem,NULL,'N','D','')");
              
              }
              }
// Insert Record event has nothing today.
if(empty({today[0][0]})){
              
              if($this->Ini->nm_tpbanco == 'pdo_sqlsrv') {
              
              sc_exec_sql("
              SET DATEFORMAT ymd;
              insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users) 
              values 
              ('Event','Description',$hoje,NULL,$hoje,NULL,'N','D','')");
              
              } else {
              
              sc_exec_sql("
              insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users)
              values 
              ('Event','Description',$hoje,NULL,$hoje,NULL,'N','D','')");
              
              } 
              }
// Insert Record event has nothing today.
if(empty({tomorrow[0][0]})){
              
              if($this->Ini->nm_tpbanco == 'pdo_sqlsrv') {
              
              sc_exec_sql("
              SET DATEFORMAT ymd;
              insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users) 
              values 
              ('Event','Description',$amanha,NULL,$amanha,NULL,'N','D','')");
              
              } else {
              
              sc_exec_sql("insert into events (title,description,start_date,start_time,end_date,end_time,recurrent,period,users) values 
              ('Event','Description',$amanha,NULL,$amanha,NULL,'N','D','')");
              
              }
              
           }

7. A continuación, realizamos la llamada a la función en el evento onScriptInit, que se ejecutará cada vez que se inicia la aplicación.

   

8. Haga clic en "Ejecutar aplicación" para generar la fuente y ver la aplicación.

   

 

Haga clic en el botón de abajo para ver la aplicación en ejecución.