Feedback Impresión
ScriptCase Macros

SCRIPTCASE MACROS

 

Scriptcase tiene macros y variables especiales que le permiten al usuario manipular eventos, botones, aplicaciones, control de seguridad, manipular fechas, etc.

Sigue una tabla de todas las macros y variables especiales de ScriptCase, incluida la lista de aplicaciones que funciona para cada una.

MACROS AND SPECIAL VARIABLES


SQL
sc_begin_trans ("Conexión")
Esta macro inicia un conjunto de transacciones en la base de datos.
sc_change_connection ("Conexión_antigua", "Nueva_conexión")
Esta macro cambia dinámicamente las conexiones de la aplicación.
sc_commit_trans ("Conexion")
Esta macro efectiva un conjunto de transacciones en la base de datos.

Con esta macro puede concatenar campos en select para cada base de datos.

sc_connection_edit ("Nombre_Conexion", $ arr_conn)
Esta macro edita una conexión existente en tiempo de ejecución.
sc_connection_new ("Nombre_de_Conexion", $arr_conn)
Esta macro crea nuevas conexiones dinámicamente.

Esta macro desactiva el mensaje de tratamiento de error de base de datos estándar de Scriptcase para un evento.

Esta macro configura la variable que contiene el mensaje de error de la base de datos que puede ocurrir durante la exclusión de un registro.
Esta macro configura la variable que contiene el mensaje de error de mensaje de error que puede ocurrir durante la adición del registro.
Esta macro configura la variable que contiene el mensaje de error de la base de datos que puede ocurrir durante la actualización de un regis
sc_exec_sql ("Comando SQL", "Conexión")
Esta macro ejecuta comandos SQL pasados como parámetro o un comando SQL en el tipo de acción de campo SQL.
sc_lookup (Conjunto de datos, "Comando SQL", "Conexión")
Esta macro ejecuta un comando SELECT almacenado en el segundo parámetro y devuelve los datos en una variable.
Esta macro borra los cambios realizados usando "sc_change_connection".
Esta macro deshace las ediciones de conexión realizadas por la macro "sc_connection_edit".
Esta macro deshace las conexiones hechas por la macro "sc_connection_new".
Esta macro descarta un conjunto de transacciones en la base de datos.
sc_select (conjunto de datos, "Comando SQL", "Conexión")
Esta macro ejecuta los comandos pasados en el segundo parámetro y devuelve el conjunto de datos en una variable.
sc_select_field ({Campo})
Esta macro modifica dinámicamente un campo que se recuperará en la Consulta.
sc_select_order ("Campo")
Esta macro modifica dinámicamente el campo de cláusulas grillas "ORDER BY".
Esta macro agrega dinámicamente una condición a la cláusula WHERE de la grilla.
Esta macro permite cambiar el tipo de retorno del conjunto de datos de los comandos seleccionados
sc_sql_injection ({Mi_Campo}) o ($Mi_Variable)
Esta macro se usa para proteger el campo / variable contra "inyección SQL".
sc_sql_protect (Valor, "Tipo", "Conexión")
Esta macro protege el valor pasado como parámetro de acuerdo con la base de datos utilizada.
Esta macro se usa para hacer una referencia de la cláusula where actualmente utilizada.
Esta macro guarda el contenido de la cláusula where de la aplicación original.
Variables - Database Variables de base de datos
Variables globales que contienen valores de acceso a la base de datos utilizados por la conexión principal.


Fecha
sc_date (Fecha, "Formato", "Operador", D, M, Y)
Esta macro calcula y devuelve incrementos y decrementos usando fechas.
sc_date_conv ({Field_Date}, "Input_Format", "Output_Format")
Esta macro convierte el campo de fecha pasado como parámetro con un formato de entrada a otro campo con un formato de salida.
sc_date_dif ({Date1}, "Format Date1", {Date2}, "Format Date2")
Esta macro calcula la diferencia entre dos fechas (pasadas como parámetros) devolviendo el resultado en días.
sc_date_dif_2 ({Date1}, "Format Date1", {Date2}, "Format Date2", Option)
Esta macro calcula la diferencia entre dos fechas que devuelven la cantidad de días, meses y años.
sc_date_empty ({Campo_Fecha})

Calcula la diferencia entre dos fechas (pasadas como parámetros) que devuelve la cantidad de días, meses y años.

sc_time_diff ({datetime_01}, "Date_01 Format", {datetime_02}, "Date_02 Format")
Calcula la diferencia en horas, devolviendo la cantidad de horas, minutos y segundos.


Controle
sc_ajax_javascript ('NombreDelMétodoDeJavascript',array("parámetro"))
Esta macro permite la ejecución de métodos de JavaScript en eventos de formulario / control
sc_alert ("Mensaje", $array)
Esta macro muestra una pantalla de mensaje Javascript.
sc_apl_conf ("Aplicación", "Propiedad", "Valor")
Esta macro cambia las propiedades de ejecución de las aplicaciones.
sc_apl_default ('aplicacion', 'tipo');
Esta macro permite que el usuario defina en su aplicación inicial lo que sucederá cuando la aplicación pierda la sesión.
sc_calc_dv (Dígitos, Descanso, Valor, Módulo, Pesos, Tipo)
Este macro calcule los dígitos de verificación.
sc_call_api ($profile, $arr_settings)
Esta macro le permite utilizar las API de Scriptcase de la API
sc_changed ({Nombre_Campo})
Esta macro devuelve "verdadero" si el nombre del campo ha sido cambiado.
sc_confirm ("Mensaje")
Esta macro muestra una pantalla de confirmación de Javascript.
sc_decode ({Mi_Campo})
Esta macro devuelve el campo o la variable cifrada a su valor original.
sc_encode ({Mi_Campo})
Esta macro devuelve el campo o la variable con el contenido cifrado.
sc_error_exit (URL / Mi_Aplicación, "Target");

Esta macro interrumpe la ejecución de la aplicación si hay mensajes de error generados por la macro "sc_error_message".

Esta macro genera un mensaje de error.
sc_exit (Opción)
Esta macro fuerza la salida de la aplicación.
sc_getfield ('miCampo')
Esta macro asigna las propiedades de un campo a una variable javascript.
Esta macro devuelve la abreviatura del lenguaje utilizado.
Esta macro devuelve la abreviatura de la configuración regional utilizada.
Esta macro devuelve el nombre del tema de la aplicación.
sc_groupby_label ("Mi_Campo")
Esta macro modifica dinámicamente la etiqueta de campo que se muestra en las líneas de Agrupación.
sc_image (Imagen01.jpg)
Esta macro carga imágenes pasadas como parámetro para usar en la aplicación.
sc_include ("Archivo", "Fuente")
Esta macro se usa para "incluir" rutinas PHP.
sc_include_lib ("Lib1", "Lib2", ...)
Esta macro se usa para seleccionar dinámicamente las bibliotecas de aplicaciones.
sc_include_library ("Destino", "Nombre de la biblioteca", "Archivo", "include_once", "Requerir")
Esta macro incluye un archivo PHP de una librería en la aplicación.
sc_label ({Mi_Campo})
Esta macro se usa para modificar dinámicamente la etiqueta del campo de formulario de cuadrícula.
Esta macro devuelve el idioma y la configuración regional.
sc_log_add ("Acción", "Descripción")
Esta macro agregará un registro en la tabla de registro.
sc_log_split ({descripcion})
Esta macro devuelve lo que se insertó en el campo "descripción" de la tabla de registro en un formato de matriz.
sc_mail_send (SMTP, Usr, Pw, From, To, Asunto, Mensaje, Mens_Type, Copies, Copies_Type, Port, Connection_Type, Attachment, SSL)

Esta macro se usa para enviar correos electrónicos.

sc_master_value ('Objeto', Valor)
Esta macro actualiza un objeto de aplicación maestra desde una aplicación de detalle.
sc_redir (Aplicación, Parámetro01; Parámetro02; Destino, Error, height_modal, width_modal)
(Aplicación, Parámetro01; Parámetro02; Destino, Error, height_modal, width_modal)
Esta macro tiene que restablecer la configuración de la macro sc_apl_default.
sc_reset_global ([Global_Variable1], [Global_Variable2] ...)
Esta macro elimina las variables de sesión recibidas como parámetro.
sc_send_mail_api ($arr_settings)

Permite el envío dinámico de correos electrónicos incrustados con Mandrill y Amazon SES

sc_send_sms ($arr_settings)
Esta macro se usa para enviar mensajes de texto SMS
sc_send_whatsapp ($arr_settings)
Esta macro permite el envío dinámico de mensajes de texto a través de Whatsapp.
Esta macro proporciona el número secuencial de registro.
sc_set_global ($variavel_01) ou ({Mi_Campo})

Esta macro se usa para registrar variables de sesión.

Macro se usa para seleccionar una regla de Agrupación específica.

sc_set_language ('String Language')
Esta macro permite cambiar dinámicamente el idioma de la aplicación.
sc_set_regional ('String Regional')
Esta macro permite cambiar dinámicamente la configuración regional de la aplicación.
sc_set_theme ('String Theme')
Esta macro se usa para definir dinámicamente los temas de la aplicación.
Esta macro verifica si se ha utilizado un sitio seguro. (protocolo https)
sc_trunc_num ({Mi_Campo}, Cantidad_Decimal)
Esta macro se usa para establecer el número de decimales.
Esta macro modifica la aplicación de destino de la dirección URL.
sc_url_library ("Destino", "Nombre de la biblioteca", "Archivo")
Esta macro devuelve la ruta de un archivo, dentro de una biblioteca, para ser utilizado en las aplicaciones.
sc_warning 'on' o 'off'
Esta macro activa o desactiva dinámicamente el control de mensajes de advertencia.
sc_webservice ("Método", "URL", "Puerto", "Método de envío", "Matriz de parámetros", "Matriz de ajustes", "Tiempo de espera", "Retorno
Esta macro se usa para comunicarse con un servicio web.
sc_zip_file ("Archivo", "Zip")
Esta macro se usa para generar archivos ZIP desde una lista de archivos y/o directorios.
Variables - Totalling Totalización de variables
Variables que contiene todos los totales (generales y para agrupar).
Variables - Totalling (group by) Totalización de variables (agrupación)
Rompiendo variables de totales.


Búsqueda
Esta macro se usa para guardar el contenido de la cláusula where generado a través del formulario de filtro.


Seguridad
sc_apl_status ("Aplicación", "Status")
Esta macro Activa / Desactiva las aplicaciones a nivel de usuario.

Esta macro establece la conexión con las credenciales del usuario.

Macro liberaba la conexión después de usar la macro sc_ldap_login

sc_reset_apl_conf ("Aplicación", "Propiedad")
Esta macro elimina todas las modificaciones efectuadas por la macro "sc_apl_conf".
Esta macro elimina todas las variables de estado de seguridad de la aplicación.
Esta macro restaura una estructura de elemento de menú. (eliminado por la macro "sc_menu_delete").
Esta macro se usa para habilitar una estructura de elemento de menú. (deshabilitado por la macro "sc_menu_disable").
sc_user_logout ('nombre de variable', 'contenido de variable', 'apl_redir.php', 'target')

Macro utilizada para registrar el usuario en el sistema.



Exibición
sc_ajax_message ("Mensaje", "Título", "Parámetros", "Parameters_Redir", "String_toast");
Esta macro permite que la aplicación muestre mensajes personalizados.

Macro para actualizar la grid

Esta macro muestra / oculta dinámicamente los campos de un bloque específico.
sc_field_color ("Campo", "Color")
Esta macro cambia el color de un texto de campo determinado.
sc_field_disabled ("Field_Name = True / False", "Parameter")

Esta macro se usa para bloquear un campo y obtener los datos que se tipearán en él.

sc_field_disabled_record ("Field_Name = True / False", "Parametre")
Esta macro tiene el objetivo de bloquear la escritura en campos determinados en los Formularios.
sc_field_display ({Mi_Campo}, on / off)
Esta macro muestra dinámicamente o no un campo específico.
Esta macro está diseñada para inhibir los campos de consulta en la carga inicial.
Esta macro dinámicamente establece un atributo de campo de campo a "sólo lectura"
sc_field_style ({Mi_Campo}, "Background-Color", "Size", "Color", "Family", "Weight")
Esta macro le permite modificar dinámicamente el estilo de campo de Consulta.
sc_format_num ({Mi_Campo}, "Simb_Grp", "Simb_Dec", "Qtde_Dec", "Enche_Zeros", "Lado_Neg", "Simb_Monetário", "Lado_Simb_Monetario")
Esta macro se utiliza para dar formato a números numéricos.
sc_format_num_region ({Mi_Campo}, "Qtde_Dec", "Insert_Zeros", "Monetary_Sym")
Esta macro tiene el objetivo de formato de números, utilizando la configuración regional
sc_form_show 'on' o 'off'
Esta macro muestra dinámicamente o no la forma.

Esta macro proporciona el nombre de la regla Agrupación que se ejecuta en ese momento.

sc_hide_groupby_rule ('group1', 'grop2', 'group3')

Macro utilizada para deshabilitar las reglas de Agrupación

sc_set_focus ('Campo')
Esta macro se usa para establecer el foco en un campo de formulario.
sc_text_style ({My_Field}, "Color de fondo", "Tamaño", "Color", "Familia", "Peso")
Esta macro permite modificar dinámicamente el estilo del texto del campo de la Consulta.


Botones
Esta macro devuelve "verdadero" cuando se selecciona el botón "copiar" en un formulario.
Esta macro devuelve "verdadero" cuando se selecciona el botón "Eliminar" en un formulario.
sc_btn_display ("Nombre_Boton", "on/off")
This macro shows and hides buttons on the toolbar in execution time.
Esta macro devuelve "verdadero" cuando se selecciona el botón "Agregar" en un formulario.
Esta macro devuelve "verdadero" cuando se selecciona el botón "Agregar nuevo" en un formulario.
Esta macro devuelve "verdadero" cuando se selecciona el botón "Guardar" en un formulario.


PDF
sc_set_pdf_name "sc_mi_archivo.pdf"
Esta macro cambiará el nombre de los archivos exportados de la consulta.
Variables - Authentication Variables de autenticación
Usuario/Contraseña para el servidor WEB.


Menú
sc_appmenu_add_item ("Menu_Name", "Id_Item", "Id_Parent", "Etiqueta", "Aplicación", "Parámetros", "Icono", "Sugerencia", "Objetivo")
Esta macro agrega dinámicamente un elemento al menú.
sc_appmenu_create ("Menu_Name")
Esta macro crea dinámicamente un elemento de menú.
sc_appmenu_exist_item ("Menu_Name", "Id_Item")
Esta macro comprueba si hay un elemento de menú.
sc_appmenu_remove_item ("Menu_Name", "Id_Item")
Esta macro elimina dinámicamente un elemento del menú.
sc_appmenu_reset ("Menu_Name")
Esta macro reinicia la matriz utilizada en la creación dinámica de una aplicación de menú.
sc_appmenu_update_item ("Menu_Name", "Id_Item", "Id_Parent", "Etiqueta", "Aplicación", "Parámetros", "Icono", "Sugerencia", "Objetivo")
Esta macro actualiza un elemento de menú.
sc_btn_disable ('id_boton', 'on/off')

Macro utilizada para desactivar los botones de Menú.

sc_menu_delete (Id_Item1)
Esta macro elimina elementos de la estructura del menú.
sc_menu_disable (Id_Item1)
Esta macro desactiva los elementos de la estructura del menú.

Macro solía forzar la creación de menús para dispositivos móviles.

Esta macro identifica el elemento de menú seleccionado.

Esta macro identifica el nombre de la aplicación que se seleccionó en el menú.





sc_ajax_javascript('NombreDelMétodoDeJavascript',array("parámetro"))

Esta macro permite la ejecución de métodos JavaScript llamados desde algunos eventos en formularios, aplicaciones de control y calendario.

Para usar esta macro, necesitas crear un método javascript en Configuración de programación.


Esta macro recibe dos parámetros:

El primer parámetro (obligatorio) recibe el nombre del método javascript.
El segundo (opcional) recibe una matriz con los parámetros del método.


Ejemplos:

Ej.1:javascript de método sin parámetros:
sc_ajax_javascript ('method_name');
sc_ajax_javascript ('suma');

Ej.2: Método JavaScript con un parámetro:
sc_ajax_javascript ('method_name', array ("paramameter"));


Ej. 3: Método javascript con dos parámetros:
sc_ajax_javascript ('method_name', array("param1", "param2"));

Ejemplo que usa variables globales:
sc_ajax_javascript ('suma', array([num1], [num2]));


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onValidate
onValidateFailure
onValidateSuccess
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onValidateFailure



sc_ajax_message("Mensaje", "Título", "Parámetros", "Parameters_Redir", "String_toast");

Esta macro permite que la aplicación muestre mensajes personalizables, con su uso restringido a eventos de forma / control cuando se usa en eventos AJAX.

Esta macro solo es válida en aplicaciones compatibles con AJAX.

 

Descripción de los parámetros

Parámetros Descripción
Mensaje Mensaje de texto que se mostrará en el cuerpo del mensaje. Este parámetro es obligatorio.
Título Texto que se mostrará en el título del mensaje. Si no se completa, el título del mensaje no se mostrará.
Cadena de parámetros del mensaje

Parámetro de formato de mensaje.
Ejemplo: modal = Y & button = Y & button_label = Ok & redir = form_employees.php & redir_target = _blank

Los detalles de este parámetro se detallan en la tabla 2.

Cadena de parámetro de redireccion

En esta propiedad se pueden definir los valores para la aplicación de redireccionamiento. Esta propiedad funciona solo si la propiedad redir es informada. Los parámetros se deben ingresar en el siguiente formato: parámetro = valor, parámetro = valor.

Por ejemplo, customer_id = ALFKI; customer_name = ALBERT FRANCINET

Cadena de parámetro Toast

Parámetro de formato de mensaje utilizando Toast.

- toast: Y ou N
 
- toast_pos: 'top', 'top-start', 'top-end', 'center', 'center-start', 'center-end', 'bottom', 'bottom-start', 'bottom-end'
 
- type: 'warning', 'error', 'success', 'info', 'question'

 

Tabla2: Cadena de parámetros de mensaje

Parámetros Descripción Valores Exemplo
modal Flag para exibição da mensagem em modal Y or N modal=Y
timeout Tiempo en segundos para ocultar el mensaje. Si no se ingresa el mensaje se mostrará de forma indefinida. Esta propiedad solo funciona si la propiedad del botón no está habilitada. Seconds timeout=5
button Muestra el botón dentro del mensaje. Su operación por defecto es cerrar el mensaje. Si la redirección está habilitada, después de cerrar el mensaje, la aplicación será redirigida. Y or N button=Y
button_label Etiqueta de botón. Esta opción solo funciona si la propiedad del botón habilitó. String button=Y&button_label=OK
top Valor de posicionamiento del mensaje en píxeles desde el margen superior. Pixels Number top=300
left Valor de posicionamiento del mensaje en píxeles desde el margen izquierdo. Pixels Number left=200
width Valor del ancho del cuadro de mensaje en píxeles Pixels Number width=320
height Valor de altura del cuadro de mensaje en píxeles Pixels Number height=30
redir URL o nombre de la aplicación para redireccionar. Esta macro funciona solo si la propiedad "button" está habilitada. String button=Y&redir=form_employees.php
redir_target Objetivo para redireccionar. Esta propiedad solo funciona cuando la propiedad "redir" está habilitada. String redir=form_employees.php&redir_target=_blank
show_close Bandera para la exposición del botón "cerrar" en la barra de título del cuadro de mensaje. Cuando se activa, este parámetro hace que se muestre una barra de título, incluso si no hay un título definido. Y or N show_close=Y
body_icon Bandera para mostrar un icono en el cuerpo del mensaje. La exposición de iconos depende de la configuración del tema de aplicaciones (esquemas de exposición). Y or N body_icon=N

 

Example 01

sc_ajax_message ("Mensaje", "Título", "timeout=0");

 

Example 02: Using Toast

sc_ajax_message ("Mensaje", "Título", "toast=Y&toasto_pos=center-start&type=success");

 

Para mostrar el mensaje utilizando Toast, esta opción debe estar habilitada en la interfaz de la aplicación.


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
ajaxFieldonBlur
Onchange
OnClick
OnFocus
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onBlur
onChange
onClick
onFocus



sc_ajax_refresh()

Esta macro se usa especialmente en eventos Ajax de una Grilla con el propósito de volver a cargar los datos de Grilla (actualización).

Ej:

sc_ajax_refresh ();


Macro Scope

Aplicación Grid
onClick



sc_alert("Mensaje", $array)

Esta macro envía un mensaje en el estilo de alerta de Javascript (Sweetalert) o Sweetalert2.

Nota

Para mostrar el mensaje usando Sweetalert2, esta opción debe estar habilitada en la interfaz de la aplicación.



Ej. 1: Mensaje usando el Sweetalert
sc_alert("¡Este es un mensaje de alerta!");

 

Ej. 2: Mensaje usando el Sweetalert2

$params = array(
'title' => 'Título',
'type' => 'success',
'timer' => '2000',
'showConfirmButton' => false,
'position' => 'bottom-end',
'toast' => true
);

sc_alert("Insertado con éxito!", $params);

 

 


Macro Scope

Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_apl_conf("Aplicación", "Propiedad", "Valor")

Esta macro permite modificar la propiedad de la aplicación. El usuario puede determinar si un Formulario se iniciará en modo de inserción, o una grid se iniciará por filtro, etc..

Esta macro debe ser usada por una aplicación para modificar las propiedades de otra aplicación.


Propiedades para aplicaciones Formularios

Propiedad Valor Descripción
start new Fuerza al formulario a comenzar en el modo de inserción para agregar nuevos registros.
insert on/off Habilita (on) o deshabilita (off) el botón para la inclusión de nuevos registros.
update on/off Habilita (on) o deshabilita (off) el botón para la inclusión de nuevos registros.
delete on/off Habilita (on) o deshabilita el botón para cambiar los registros..
field_display_off field Dinámicamente oculta un campo.
field_display_on field Muestra dinámicamente un campo.
field_readonly field Fuerza un campo para que se muestre como "readonly"..
rows Fuerza el número de líneas para cada una de las páginas (sólo para formularios de multiples registros)..
rows_ins Fueza el número de líneas para insertar (sólo para formulario de multiples registros).


Propiedad para aplicaciones Grid

Propiedad Valor Descripción
start filter Fuerza a la grid a comenzar por el filtro.
cols Fuerza el número de columnas. (tipo vertical y deslizante)
rows Fuerza a la grid a comenzar por el filtro..
lig_edit on/off Habilita (on) o deshabilita el botón de edición del registro (lapis)

Propiedad para todas las aplicaciones

Propiedad Valor Descripción
exit apl/url Fuerza la aplicación a salir a una ubicación especificada.

Ex. 1: Fuerza a la aplicación "my_form" a comenzar en el modo de inserción.
sc_apl_conf("my_form", "start", "new");

Ex. 2: No permite que la aplicación "my_form" agregue nuevos registros.
sc_apl_conf("my_form", "add", "off");

Ex. 3: Muestra "mi_campo", de la aplicación "my_form", dinámicamente.
sc_apl_conf("my_form", "field_display_off", "my_field");

Ex. 4: Fuerza a la aplicación "mi_consulta" a iniciar por el filtro.
sc_apl_conf("my_form", "field_display_on", "my_field");

Ex. 5: Fuerza a la aplicación "my_grid" a iniciar en modo filtro.
sc_apl_conf("my_grid", "start", "filter");

Ex. 6: Fuerza la aplicacion "my_grid"a mostrar N lineas en este ejemplo 20.
sc_apl_conf("my_grid", "rows", "20");

Ex. 7: Oculta "my_field" on the application "my_form" dinamically.
sc_apl_conf("my_form", "field_display_off", "my_field");

Ex. 8: Usa el boton del menu de la barra de herramientas.
if ({sc_menu_item} == "btn_1")
{
sc_apl_conf("form_customer", "start", "new");
}


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onScriptInit



sc_apl_default('aplicacion', 'tipo');

Esta macro permite que el usuario defina en su aplicación inicial lo que sucederá cuando la aplicación pierda la sesión.

La macro tiene los siguientes parámetros:

Apl: Aquí es necesario informar a qué aplicación se redirigirá la macro después de perder la sesión.

Tipo: Aquí informaremos al tipo de redireccionamiento que se producirá. Hay dos tipos:

  • R: La aplicación solo redireccionará a la aplicación inicial.
  • M: Se mostrará un mensaje antes del redireccionamiento.

Ejemplo: En una aplicación de inicio de sesión definida como la aplicación inicial, podemos definir que esta aplicación se redireccionará a sí mismo.
sc_apl_default("app_login","R")


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onCalendarScriptInit
onScriptInit
onScriptInit onScriptInit onFilterInit onScriptInit onScriptInit onScriptInit



sc_apl_status("Aplicación", "Status")

Usado para controlar el acceso de seguridad. Estas macros activan / desactivan las aplicaciones a las que un usuario tiene acceso.


Application: Es el nombre o la variable que contiene el nombre de la aplicación para activar / desactivar.
Status: Es el valor o la variable que contiene el valor que se debe atribuir a la aplicación. Los valores son: "on" para activar y "off" para desactivar.

Ex. 1:
sc_apl_status ('atu_cad', 'off');


Ex. 2:
sc_apl_status ({var_name_appl}, {var_status});


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_appmenu_add_item("Menu_Name", "Id_Item", "Id_Parent", "Etiqueta", "Aplicación", "Parámetros", "Icono", "Sugerencia", "Objetivo")

Agrega dinámicamente de un elemento a una aplicación de menú.

Solo es posible usar esta macro cuando hay una matriz creada anteriormente por la macro sc_appmenu_create.

Parametro Descripción
Menu_name Nombre del menú de la aplicación.
Id_item ID del elemento de menú.
Id_Parent ID del elemento de menú. Si el elemento es raíz, el valor ese parámetro se debe pasar en blanco.
Label Descripción para el elemento de menú
Aplicación Elemento de menú URL o nombre de la aplicación...
Parametros Cadena con parámetros para pasar a la aplicación del elemento de menú.
Ej.: param1=valor;param2=valor
Icon Ruta del icono utilizado en el elemento del menú.
Hint Descripción descriptiva del elemento del menú.
Target Objetivo para el enlace del elemento de menú. ("_self" para usar la misma ventana, "_blank" a una nueva y "_parent" para salir de la ventana.

Ej. 1: Crea un menú llamado menu_main.
sc_appmenu_create('menu_main');


Ej. 2:
Agrega un en el menu_main el elemento_1 llamado Category.
sc_appmenu_add_item('menu_main','item_1','','Category','');


Ej. 3: Agrega en el menú_main (elemento_2) al elemento_1 Nombre Categoría vinculado a form_category pasando algunos parámetros.
sc_appmenu_add_item('menu_main','item_2','item_1','Category Form','form_category','param1=value;param2=value');


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_appmenu_create("Menu_Name")

Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_appmenu_exist_item("Menu_Name", "Id_Item")

Verifica si el menu existe y devuelve verdadero V o falso.

Parametro Descripci

Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_appmenu_remove_item("Menu_Name", "Id_Item")

Elimina dinamicamente un elemento del Manu.

Para usar esta macro antes es necesario ejecutar la macro sc_appmenu_create.

Parametro Descripci?006e0026006ct;/strong>
menu_name Nombre de la aplicaci?006e00200064e men?0026006c0074003b/td>
id_item Menu item id

Ej. 1:
sc_appmenu_remove_item('menu_main','item_2');


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_appmenu_reset("Menu_Name")

Esta macro restablece la matriz utilizada en la creaci


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_appmenu_update_item("Menu_Name", "Id_Item", "Id_Parent", "Etiqueta", "Aplicación", "Parámetros", "Icono", "Sugerencia", "Objetivo")

Actualiza din?006d0069camente el elemento de men?0020006400650020la aplicaci?006e0026006ct;/p>

Solo es posible usar esta macro cuando hay una matriz creada anteriormente por la macro sc_appmenu_create..

Solo es posible utilizar esta macro en elementos creados anteriormente por la macro sc_appmenu_add_item.

Parametos Descripci?006e0026006ct;/strong>
menu_name Nombre del elemento del men?0020006400650020la aplicaci?006e0026006ct;/td>
id_item ID del elemento del men?0020006400650020la aplicaci?006e0026006ct;/td>
id_parent Elemento de men?0020006400650020la aplicaci?006e00200049D padre. Para las ra?00630065s se pasa el valor nulo / vac?006f002e
Label Descripci?006e00200064el elemento del men?0020006400650020la aplicaci?006e002e0026lt;/td>
Aplication Elemento de men?002000550052004c o nombre de la aplicaci?006e0026006ct;/td>
Parameters Cadena con par?006d0065tro para pasar al elemento del men?0020006400650020la aplicaci?006e003c0062r />Ej .: param1 = valor; param2 = valor
Icon Ruta de icono utilizada en el elemento del men?002e0026006c0074;/td>
Hint Sugerencia descriptiva para el elemento de men?002e0026006c0074;/td>
Target Objetivo para el enlace del elemento del men?0026006c0074003b/td>

Ej. 1:
sc_appmenu_update_item('menu_main','item_2','item_1','Category Form','form_category');


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_begin_trans("Conexión")

Esta macro inicia un conjunto de transacciones en la base de datos.

Para el uso de esta macro necesita tener una base de datos transaccional.

En las aplicaciones de formulario, los eventos (onAfterInsert, onAfterUpdate, onAfterDelete, onBeforeInsert, onBeforeUpdate o onBeforeDelete) están protegidos automáticamente por un control de transacción, ya que la conexión es la misma que la de la aplicación.

En los otros casos, si el usuario necesita realizar un control de transacción, debe comenzar con esta macro y finalizar con la macro sc_commit_trans() para confirmar las actualizaciones o sc_rollback_trans() para cancelar las transacciones.

El parámetro "conexión" es opcional, necesario solo si el comando se ejecuta en una conexión diferente de la aplicación real.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_block_display

Determina dinámicamente los campos de visualización de un bloque específico.

Por padrón, todos los bloques se muestran (condición "on").

By default all the blocks are displayed ("on" condition).

Ex. 1:
if ({type_customeri} == "personal")
{
sc_block_display(company, off);
}
else
{
sc_block_display(personal, off);
}

Obs: In grids, this macro only works with "slide" orientation.


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle
onAfterInsert
onAfterUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onScriptInit onScriptInit
onRecord
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onClick
onScriptInit
onLoadAll
onRefresh



sc_btn_copy

Disponible cuando se hace clic en el botón "Copiar". Se puede probar y usar dentro de los eventos de ScriptCase, lo que permite una programación específica en tiempo de ejecución.

Ex. 1:

if (sc_btn_copy)

{

sc_message("Record copied successfully!");

}


Macro Scope

Aplicación Calendario Aplicación Formulário
onScriptInit
onLoad
onScriptInit
onLoad



sc_btn_delete

Disponible cuando se hace clic en el botón "Eliminar". Se puede probar y usar dentro de los eventos de ScriptCase, lo que permite una programación específica en tiempo de ejecución.

Ex. 1:
if (sc_btn_delete)
{
sc_error_message("Unable to delete this record");
}


Macro Scope

Aplicación Calendario Aplicación Formulário
onValidate
onValidateFailure
onValidateSuccess
onValidate
onValidateFailure
onValidateSuccess



sc_btn_disable('id_boton', 'on/off')

Esta macro se usa para deshabilitar o habilitar botones desde una aplicación de menú.

 

Ex:

sc_btn_disable('btn_2', 'off');


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onLoad



sc_btn_display("Nombre_Boton", "on/off")
Esta macro muestra y oculta los botones en la barra de herramientas en tiempo de ejecución.

Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle
onAfterDelete
onAfterInsert
onAfterUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onScriptInit onScriptInit onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure



sc_btn_insert

Disponible cuando se hace clic en el botón "Agregar". Se puede probar y usar dentro de los eventos de ScriptCase, lo que permite una programación específica en tiempo de ejecución.

Ex. 1:
if (sc_btn_insert)
{
sc_message("Record inserted successfully");

}


Macro Scope

Aplicación Calendario Aplicación Formulário
onValidate
onValidateFailure
onValidateSuccess
onValidate
onValidateFailure
onValidateSuccess



sc_btn_new

Available when the "Add New" button is clicked. Can be tested and used inside the ScriptCase events, allowing especific programmation in run time.

Ex. 1:
if (sc_btn_new)
{
{My_Date} = date('Y/m/d');
}

Disponible cuando se hace clic en el botón "Agregar nuevo". Se puede probar y usar dentro de los eventos de ScriptCase, lo que permite una programación específica en tiempo de ejecución.

Ej. 1:
if (sc_btn_new)
{
{My_Date} = date ('Y / m / d');
}


Macro Scope

Aplicación Calendario Aplicación Formulário
onLoad onLoad



sc_btn_update

Disponible cuando se hace clic en el botón "Guardar". Se puede probar y usar dentro de los eventos de ScriptCase, lo que permite una programación específica en tiempo de ejecución.

Ex. 1:
if (sc_btn_update)
{
sc_error_message("Record updated successfully");
}


Macro Scope

Aplicación Calendario Aplicación Formulário
onValidate
onValidateFailure
onValidateSuccess
onValidate
onValidateFailure
onValidateSuccess



sc_calc_dv(Dígitos, Descanso, Valor, Módulo, Pesos, Tipo)

Calculate verifier (checksum) digits.

Parameter

Description
Digit Variable that will recieve the calculated digit.
Rest Variable that will recieve the "rest" of the division.
Value Value or Variable to calculate the digit.
Module Value or Variable containing the module to be used. Default value is module "11".
Weights Value or Variable containing the weights to be used. Default value is the "98765432" values.
Type Value or Variable containing the parcels calculation to be used: 1 to normal sum of the parcels values and 2 to the sum of each algorithm of the parcels. Default value is "1".

Ex. 1:
sc_calc_dv({my_dv}, {my_rest}, 1234567, 11, 98765432, 1);
Parcels calculation: 7x2= 14 ; 6x3=18 ; 5x4=20 ; 4x5=20 ; 3x6=18 ; 2x7=14 ; 1x8=8
Parcels sum : 14 + 18 + 20 + 20 + 18 + 14 + 8 = 112
Rest of the division of 112 / 11 = 2
Digit: 11 - 2 = 9

Ex. 2:
sc_calc_dv({my_dv}, {my_rest}, 1234567, 10, 12, 2);
Parcels calculation: 7x2= 14 ; 6x1=6 ; 5x2=10 ; 4x1=4 ; 3x2=6 ; 2x1=2 ; 1x2=2
Parcels sum: 1 + 4 + 6 + 1 + 0 + 4 + 6 + 2 + 2 = 26
Rest of the division of 26 / 10 = 6
Digit: 10 - 6 = 4


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_call_api($profile, $arr_settings)

Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onHeader
onScriptInit
onRecord
onFilterInit
onFilterSave
onFilterValidate
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_changed({Nombre_Campo})

Macro para comprobar si se ha cambiado el nombre del campo.

Ex. 1:
if (sc_changed({my_field}))
{
Echo "Filed have been changed";
}


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onBeforeUpdate
onValidate
onValidateFailure
onValidateSuccess
onBeforeUpdate
onValidate
onValidateFailure
onValidateSuccess
onRefresh



sc_change_connection("Conexión_antigua", "Nueva_conexión")

Esta macro cambia dinámicamente las conexiones de la aplicación

Ej. 1: Para cambiar las conexiones:

sc_change_connection("Old_Concection01", "New_Connection01" ; "Old_Concection02", "New_Connection02");


Permite cambiar más de una aplicación / conexión en un comando. Se pueden pasar múltiples conexiones como parámetros que deben estar separados por un ";".


Ej. 2: Usando variables:

sc_change_connection([Global_Connetion], [Test_Connection]);

Los cambios tienen efecto en las próximas aplicaciones.


Ej. 3: Cambiar la conexión principal de la aplicación

sc_change_connection({Password}, [Test] ; "My_Connection", [Global_Connection]);

Los cambios tienen efecto en las próximas aplicaciones.


Ex. 4: Para eliminar los cambios:

Para recuperar su configuración anterior puede usar la macro sc_reset_change_connection();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onExecute onScriptInit
onLoad
onHeader
onScriptInit
onApplicationInit
onScriptInit
onScriptInit
onLoad
onLoadRecord
onScriptInit
onLoadAll
onHeader
onScriptInit
onRecord



sc_commit_trans("Conexion")

Esta macro tiene el objetivo de confirmar un conjunto de transacciones en la base de datos

En las aplicaciones de formularios, hay eventos que realizan transacciones con la base de datos (Ex: onAfterInsert, onAfterUpdate, onAfterDelete, onBeforeInsert, onBeforeUpdate, onBeforeDelete, etc...).
El control de transacciones de estos eventos se realiza mediante Scriptcase, si la conexión proporcionada es la misma de la aplicación.
Sin embargo, si el usuario tiene que realizar cualquier tipo de redirección en estos eventos, es necesario utilizar la macro sc_commit_trans antes de la redirección para asegurar las transacciones realizadas anteriormente.

Ex: onAfterUpdate - Utilizando la redirección después de actualizar un registro:

sc_commit_trans();

sc_redir('grid_main');

El parámetro "conexión" es opcional, siendo necesario solo si el comando se ejecuta en una base de datos diferente a la aplicación.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_concat

Esta macro está destinada a concatenar los campos de tabla en los Selects.


Esta macro tiene el propósito de concatenar campos de tabla en Selects realizadas en los eventos y en el SQL de la aplicación, y se puede usar en campos Selects, campos Texto Auto-complete y cualquier otro campo que se pueda hacer, Select automático.


Ex. 1: Uso(Edición de búsqueda):

	SELECT campo1, sc_concat(campo2,' - ',campo3) FROM tabla
	SELECT campo1, sc_concat(campo2,' | ',campo3) FROM tabla
	


Ex. 2: Usando la macro con sc_lookup:

 
	sc_lookup(Dataset,"SELECT campo1,sc_concat(campo2, ' - ' ,campo3) FROM tabla");
	

Realiza el formateo de acuerdo a su banco.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_confirm("Mensaje")

Válido solo en el código de programación PHP que se ejecuta cuando se lo llama a través de un botón de la barra de herramientas.

Esta macro se usa para confirmar que la acción debe ejecutarse realmente, evitando errores.

Ej. 1:
sc_confirm ("¿Realmente deseas ejecutar esta acción?");


Macro Scope

Aplicación Formulário Aplicación Controle
onClick onClick



sc_connection_edit("Nombre_Conexion", $ arr_conn)

1º Parámetro: nombre de la conexión que se editará.

2º parámetro: matriz de elementos que contienen la información de conexión que se editará. Mira los índices de la matriz:

Indice
Description Example
['server'] Database server (host) $arr_conn['server'] = "127.0.0.1"
['user'] Database username $arr_conn['user'] = "root"
['password'] Database password $arr_conn['password'] = "secretpass123"
['database'] Database name used in the connection $arr_conn['database'] = "sc_samples"
['persistent'] Defines if the connection is persistent or not $arr_conn['persistent'] = "Y" / "N"
['encoding'] Configure the connection encoding $arr_conn['encoding'] = "utf8"

Note:Is not required to use all the indices in the array, we can pass only the required ones.

Example:

$arr_conn = array();

$arr_conn['user'] = "admin2";
$arr_conn['password'] = "admin2pass";
$arr_conn['database'] = "sc_samples2";

sc_connection_edit("sc_connection", $arr_conn);


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_connection_new("Nombre_de_Conexion", $arr_conn)
Limite de caracteres: 5000

Cuando se usa, la macro crea una nueva conexión con la información insertada en sus parámetros. Esta conexión está disponible en toda la sesión actual de Scriptcase y deja de existir cuando se cierra la sesión.

1º parámetro: nombre de la conexión.

Nota: si hay una conexión creada dentro del Scriptcase con el mismo nombre, esta macro no tiene ningún efecto. Las conexiones creadas dentro de Scriptcase prevalecen. Si desea editar una conexión existente, consulte la documentación de la macro sc_connection_edit .

2º parámetro: matriz de elementos que contienen la información de conexión. Mira los índices de la matriz:

Indice
Description Example
['drive'] Driver of the database used for the connection (see table below) $arr_conn['drive'] = "oci8"
['server'] Database server (host) $arr_conn['server'] = "127.0.0.1"
['user'] Database username $arr_conn['user'] = "root"
['password'] Database password $arr_conn['password'] = "secretpass123"
['database'] Database name used in the connection $arr_conn['database'] = "sc_samples"
['persistent'] Defines if the connection is persistent or not $arr_conn['persistent'] = "Y" / "N"
['encoding'] Configure the connection encoding $arr_conn['encoding'] = "utf8"

Note: It is required that all items are filled, with the exception of items ['persistent'] and ['encoding'].

See below the driver's list:


Driver
Descrição
access MS Access
ado_access MS Access ADO
odbc ODBC Genérico
db2 DB2
db2_odbc DB2 ODBC Nativo
odbc_db2 DB2 ODBC Genérico
odbc_db2v6 DB2 ODBC Genérico 6 ou Abaixo
pdo_db2_odbc DB2 PDO ODBC
pdo_ibm DB2 PDO
firebird Firebird
pdo_firebird Firebird PDO
borland_ibase Interbase 6.5 ou Acima
ibase Interbase
pdo_informix Informix PDO
informix Informix
informix72 Informix 7.2 ou Abaixo
ado_mssql MSSQL Server ADO
pdo_sqlsrv MSSQL Server NATIVE SRV PDO
mssqlnative MSSQL Server NATIVE SRV
odbc_mssql MSSQL Server ODBC
mssql MSSQL Server
pdo_mysql MySQL PDO
mysqlt Mysql (Transactional)
mysql MySQL (Non-Transactional)
pdo_oracle Oracle PDO
oci805 Oracle 8.0.5 ou Acima
odbc_oracle Oracle ODBC
oci8 Oracle 8
oci8po Oracle 8 Portable
oracle Oracle 7 ou menor
postgres7 PostgreSQL 7 ou Acima
pdo_pgsql PostgreSQL PDO
postgres64 PostgreSQL 6.4 ou acima
postgres PostgreSQL 6.3 ou abaixo
pdosqlite SQLite PDO
sqlite SQLite
sybase Sybase
pdo_sybase_dblib Sybase PDO DBLIB
pdo_sybase_odbc Sybase PDO ODBC

Example:

$arr_conn = array();

$arr_conn['drive'] = "mysqlt";
$arr_conn['server'] = "127.0.0.1";
$arr_conn['user'] = "root";
$arr_conn['password'] = "pass123";
$arr_conn['database'] = "sc_samples";
$arr_conn['persistent'] = "Y";
$arr_conn['encoding'] = "utf8";

sc_connecti


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_date(Fecha, "Formato", "Operador", D, M, Y)

Esta macro tiene el objetivo de calcular el incremento o disminución de fechas. Para su uso son necesarios algunos parámetros de la siguiente manera:

Parameter
Description
Date Date field that contains the date to be modified.
Format Formatting thats the date field is.
Operator "+" for increment and "-" for decrement.
D Number of days to increment or decrement.
M Number of months to increment or decrement.
Y Number of Years to increment or decrement.



Ex. 1:
{birthdate} = sc_date({birthdate}, "dd/mm/yyyy", "+", 30, 0, 0);

Ex. 2:
$new_date = sc_date({birthdate}, "yyyy-mm-dd", "-", 15, 3, 2);

Ex. 3:
{inclusion_dt} = sc_date(date('Ymd'), "yyyymmdd", "-", 0, 1, 1);

OBS: To be certified of the date format, before use the function, try it in any event:
echo "form_date =". {name of the field date};


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_date_conv({Field_Date}, "Input_Format", "Output_Format")

Esta macro convierte el campo de fecha pasado como parámetro con un formato de entrada a otro campo con un formato de salida.

Parameter
Description
A or Y Used to reference years.
M Used to reference Months.
D Used to reference Days.
Db_Format Used to get the Dadabase date format.

Ex. 1: Converts the date from "dd/mm/yyyy" format to the "yyyymmdd" format.
{field_date} = sc_date_conv({field_date}, "dd/mm/aaaa", "aaaammdd");

Ex. 2: Converts the date from the database native format to "dd/mm/yyyy" format.
{field_date} = sc_date_conv({field_date}, "db_format", "dd/mm/aaaa");

Ex. 3: Converts the date from the "dd/mm/yyyy" format to the Database native format.
{field_date} = sc_date_conv({field_date}, "dd/mm/aaaa", "db_format");


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onRecord



sc_date_dif({Date1}, "Format Date1", {Date2}, "Format Date2")

Calcula la diferencia entre dos fechas (pasadas como parámetros) en días.

Parameter
Description
Date1 Date1 value or variable.
Format Date1

Value or Variable containing the date format stored on Date1.

Date2 Date2 value or variable.
Format Date2 Value or Variable containing the date format stored on Date2.



Ex. 1:
{amount_days} = sc_date_dif({date1}, "aaaa-mm-dd", {date2}, "mm/dd/aaaa");

Ex. 2:
{amount_days} =
sc_date_dif("2000-05-01", "aaaa-mm-dd", "04/21/2004", "mm/dd/aaaa");
{amount_days} would be equal to -1451 (days)



Note: Formats can be different but must be in days, months and years.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_date_dif_2({Date1}, "Format Date1", {Date2}, "Format Date2", Option)

Calcula la diferencia entre dos fechas (pasadas como parámetros) que devuelve la cantidad de días, meses y años.


The result is returned in an array structure, where the index 0 have the amount of days, the index 1 have the amount of months and the index 2 have the amount of years.

Parameter
Description
Date1 Date1 value or variable.
Format Date1

Value or Variable containing the date format stored on Date1.

Date2 Date2 value or variable.
Format Date2 Value or Variable containing the date format stored on Date2.
Option 1 = Doesn't consider the initial day; 2 = Considers the initial day.



Ex. 1:
{differences} =
sc_date_dif_2 ({date1}, "yyyy-mm-dd", {date2}, "mm/dd/yyyy", 1);
{dif_days} = {differences[0]};
{dif_months} = {differences[1]};
{dif_years} = {differences[2]};

Ex. 2:
{differences} =
sc_date_dif_2 ("2000-05-01", "yyyy-mm-dd", "04/21/2004", "mm/dd/yyyy", 1);
{differences[0]} = 20 (days)
{differences[1]} = 11 (months)
{differences[2]} = 3 (years)


Ex. 3: Using the option 2
{differences} =
sc_date_dif_2 ("2000-05-01", "yyyy-mm-dd", "04/21/2004", "mm/dd/yyyy", 2);
{differences[0]} = 21 (days)
{differences[1]} = 11 (months)
{differences[2]} = 3 (years).


Note: Formats between the two dates can be different but it must have days, months and years


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_date_empty({Campo_Fecha})

Esta macro comprueba si un campo de fecha está vacío.


Ex. 1:
if (sc_date_empty({my_date}) )
{
sc_error_message("Invalid Date");
}


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onHeader onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterRefresh
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onLoadAll
onRefresh
onHeader
onRecord



sc_decode({Mi_Campo})

Devuelve, el campo o la variable encriptados, a su valor original.

Ex. 1: Using a local variable:
{my_field} = sc_decode($field_cript);



Ex. 2: Using an user variable:
$my_var = sc_decode($field_cript);


Note: Netmake isn't responsible by the cryptography algorithm integrity (it is an open source algorithm)


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_encode({Mi_Campo})

Returns the field or variable with the content encrypted.


Ex. 1: Encrypting a local variable:
$field_cript = sc_encode({my_field});



Ex. 2: Encrypting an user variable:
$field_cript = sc_encode($my_var);

Note: Netmake isn't responsible by the encrypting algorithm integrity, (The algorithm provided is open source).


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_error_continue("Evento")

Esta macro desactiva el mensaje de tratamiento de error de base de datos estándar de Scriptcase para el evento pasado como parámetro, lo que permite que sea sustituido por el tratamiento de error personalizado del programador.

Se puede usar junto con la variable: {sc_erro_delete }, {sc_erro_insert} y / o {sc_erro_update}

Los eventos que se pasarán como parámetro son: insertar, eliminar o actualizar.

Ej. 1: Utilizando en el evento onDelete para el mensaje devuelto por mssql, el tratamiento desencadenante, que cancela la exclusión de registros, muestra un mensaje de error en el formato [Microsoft] [Controlador ODBC SQL Server] [SQL Server] No puede borrar el registro.

sc_error_continue ("delete");
if (! Empty ({sc_error_delete}))
{
$ tmp = strrpos ({sc_error_delete}, "]");
if ($ tmp! == false)
{
{sc_error_delete} = substr ({sc_error_delete}, $ tmp 1) ;
}
sc_error_message ({sc_error_delete});
sc_error_exit;
}


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit



sc_error_delete

Esta variable devuelve una cadena con un mensaje de error de base de datos, que ocurre al tratar de excluir un registro.

Se usa cuando hay una necesidad de tratar estos mensajes. < br />
Como por ejemplo, en caso de validaciones de bases de datos a través de desencadenantes o procedimientos que devuelvan mensajes.

Ej. 1: contenido de la variable {sc_error_delete} , que devuelve un mensaje de error generado por el activador de la base de datos usando

MsSQL. "[Microsoft] [Controlador ODBC SQL Server] [SQL Server] No puede borrar este registro."

Nota: Para acceder al error de devolución de la base de datos, ve la macro " sc_error_continue ".


Macro Scope

Aplicación Calendario Aplicación Formulário
onAfterDelete onAfterDelete



sc_error_exit(URL / Mi_Aplicación, "Target");

El uso de esta macro da como resultado la interrupción de la aplicación.
De esta manera, se interrumpirá cualquier procesamiento que se ejecutará después del uso del marco o se está ejecutando en el momento.
Aquí puedes ver un ejemplo del uso de la macro.

Esta macro debe usarse después de la macro
sc_error_message ();

Esta macro se puede utilizar de dos maneras: sin parámetros sc_error_exit (); eso solo interrumpe la aplicación o informa a una URL / aplicación que el usuario será redirigido cuando se muestre el error.

Parámetro de la macro, todos los parámetros son opcionales.
Aplicación/URL Optional El nombre de la aplicación Destiny o la URL a la que se redirigirá.
Target Optional

_blank, _self

 

Cuando informamos a una aplicación o URL de destino y no se informa al parámetro Target, se utilizará _self como predeterminado.

Objetivos disponibles
_blank Muestra la aplicación de destino o la URL en otra ventana o pestaña.
_self Muestra la aplicación de destino o la URL en la misma ventana o pestaña.

 

Ex. 1: Muestra solo un mensaje de error.

sc_error_message('¡Mensaje de error!');
sc_error_exit();


Ex. 2: Muestra un mensaje de error y un botón "OK" para redireccionar a la URL informada.

sc_error_message('¡Mensaje de error!');
sc_error_exit(http://www.mysite.com);

Ex. 3:Show an error message and an "OK" button to redirect to the application informed.

sc_error_message('¡Mensaje de error!');
sc_error_exit(my_application, "_blank");

Macro Scope

Aplicación Calendario Aplicación Búsqueda Aplicación Formulário Aplicación Controle
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onValidate
onValidateFailure
onValidateSuccess
onFilterValidate ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onNavigate
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess



sc_error_insert

Esta variable devuelve una cadena con el error de base de datos, que ocurre al agregar un registro. Se usa cuando es necesario tratar estos mensajes. Por ejemplo, en el caso de validaciones de bases de datos a través de desencadenantes o procedimientos que devuelven mensajes.

Ej. 1: Variable {sc_erro_insert} , al devolver un mensaje de error generado por la base de datos, se activa el uso de mssql

"[Microsoft] [Controlador ODBC SQL Server] [SQL Server ] No puede agregar este registro. "

Nota: Para acceder al error de la base de datos, consulte la macro " sc_error_continue ".


Macro Scope

Aplicación Calendario Aplicación Formulário
onAfterInsert onAfterInsert



sc_error_message("Texto")

Esta macro genera un mensaje de error.

En las aplicaciones " Formularios y Control ", los mensajes se presentan junto con otros mensajes de error. encontrados en la aplicación, excepto cuando se utiliza la macro " sc_error_exit ".

En las aplicaciones " Cuadrícula y menú ", los mensajes solo se presentarán a través de la macro " sc_error_exit ".


Ej. 1:
if ({discount}> 0.10 && [glo_usr] == 'operator')
{
sc_error_message ("Descuento de". {Discount}. "Anterior de el permitido ");
}

En este ejemplo, si el valor en el campo de descuento es más de 0.10 y el usuario intenta agregar o guardar este registro, la operación finaliza y el aparece un mensaje de error. El comando debe terminar con ");" (cerrar paréntesis y punto y coma) utilizado como delimitador para el intérprete de macros.


Macro Scope

Aplicación Calendario Aplicación Búsqueda Aplicación Formulário Aplicación Controle
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onValidate
onValidateFailure
onValidateSuccess
onFilterValidate ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onLoad
onNavigate
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess



sc_error_update

Esta variable devuelve una cadena con un mensaje de error de base de datos que se produce al actualizar un registro. Se usa cuando existe la necesidad de tratar estos mensajes. Por ejemplo, en el caso de validaciones de bases de datos a través de disparadores o procedimientos que devuelven mensajes.


Ej. 1: Variable {sc_erro_update} , devolviendo un mensaje de error generado por un activador de base de datos usando mssql.

"[Microsoft] [Controlador ODBC SQL Server] [SQL Servidor] No puede actualizar este registro ".

Nota: Para acceder al error de devolución de la base de datos, consulte la macro " sc_error_continue ". < / span>


Macro Scope

Aplicación Calendario Aplicación Formulário
onAfterUpdate onAfterUpdate



sc_exec_sql("Comando SQL", "Conexión")

Esta macro permite condicionar las circunstancias en que se ejecutan los comandos SQL.

El parámetro "Conexión" es opcional. Obligatorio solo, si el comando se ejecuta en una base de datos diferente de la aplicación.

Ex. 1:
if (sc_after_delete) {
sc_exec_sql("delete from mytable where key = {key_ant}");
}


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarScriptInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_exit(Opción)

Esta macro se puede usar en los eventos de ScriptCase y en el botón creado y puede devolver valores / proceso después de la ejecución.

Option
Description
sc_exit() Returns to the previous application without display anything.
sc_exit(ok) Displays a window with an OK button adn returns to the previous application.
sc_exit(sel) Doesn’t display the window with an OK button and returns to the current application, repeat the application select.
sc_exit(ref) Doesn't display the window with an OK button refresh data and returns to the current application.
sc_exit(ok,ref) Same of the sc_exit(ref) function; however, display the OK button.
sc_exit(ok,sel) Same of the sc_exit(sel) function; however, display the OK button.


This option is only valid for Form and Control Applications.

Opton
Description
sc_exit() Doesn't complete transactions in database.
sc_exit(c) Commit pending transactions.
sc_exit(r) Rollback pending transactions.

Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onScriptInit onClick
onScriptInit
onClick
onScriptInit



sc_field_color("Campo", "Color")

Esta macro se usa para cambiar / restaurar un color de cuadrícula de forma dinámica..

Ex. 1: Change the grid text field “customer_id” color.
sc_field_color ("customerid", "#33FF66");


Ex. 2: Change the "value_order” field text color, if the value is greater that 1000. Otherwise, use the default color.
if ({value_order} > 1000)
{
sc_field_color ("value_order", "#33FF66");
}
else
{
sc_field_color ("value_order", "");
}



Ex. 3: Using a local variable.

sc_field_color ("customerid", {fld_color});



Ex. 4: Using a global variable.

sc_field_color ("customerid", [glo_color]);


Macro Scope

Aplicación Grid Aplicación ReportPDF
onScriptInit
onRecord
onScriptInit
onRecord



sc_field_disabled("Field_Name = True / False", "Parameter")

Esta macro se usa para bloquear un campo y obtener los datos que se escribirán en él.

Los campos que se van a bloquear deben ir seguidos de la opción "verdadero" (predeterminado) o "falso".

El parámetro es opcional, "I" se usa solo para bloquear la adición de nuevos registros, "U" para bloquear solo la actualización, en el caso de que el parámetro no haya sido informado, el scriptcase usará ambas opciones..

Ex. 1: Blocks only one field for addition and update.
sc_field_disabled("Field_01");

Ex. 2: Unblocking a field for addtion and update.
sc_field_disabled("Field_02=false");

Ex. 3: Blocks several fields, only for update.
sc_field_disabled("Field_01; Field_02; Field_03", "U");

Ex. 4: Combination of block and unblock of several fields, for adition and update.
sc_field_disabled("Field_01=true; Field_02=false; Field_03=true");


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onLoad onLoad
onNavigate
onLoadAll onHeader



sc_field_disabled_record("Field_Name = True / False", "Parametre")

Esta macro tiene el objetivo de bloquear el tipado en campos determinados en las líneas del formulario de Grabación múltiple, Grid editable y Visión de Grid editable.

Los campos que se supone que deben bloquearse deben aplicarse a las opciones, "verdadero" (Para bloquear) o "falso" (para desbloquear). Si no está informado, el valor predeterminado es "verdadero".

El parámetro opcional es usar la "I" para bloquear al insertar un nuevo registro y "U" para bloquear mientras se actualiza un registro. Si no se informa, Scriptcase bloqueará en ambas ocasiones de manera predeterminada.

Ex. 1: Blocking the field while including and updating.
sc_field_disabled_record(“Field_01");

Ex. 2: Unblocking the field while including and updating.
sc_field_disabled_record(“Field_02=false");

Ex. 3: Blocking the various fields only when updating.
sc_field_disabled_record(“Field_01; Field_02; Field_03", "U");

Ex. 4: Combination of blocking and unblocking various fields while including and updating.
sc_field_disabled_record("Field_01=true; Field_02=false; Field_03=true");

The macro can also work within a condition, blocking a specific field on the record line.

Example 1:
if ({Filed_01} == 1)
{
sc_field_disabled_record("Filed_03");
}

Example 2:
switch(trim([arr_apps][ {app_name} ]))
{
case 'form':
break;
case 'calendar':
sc_field_disabled_record("priv_export; priv_print");
break;
case 'cons':
sc_field_disabled_record("priv_insert; priv_delete; priv_update");
break;
default:
sc_field_disabled_record("priv_insert; priv_delete; priv_update; priv_export; priv_print");
break;
}


Macro Scope

Aplicación Formulário
onLoadRecord



sc_field_display({Mi_Campo}, on / off)

Esta macro muestra dinámicamente un campo específico.
Por defecto, todos los campos se muestran ("en" condición ").


Ex. 1:
if ({tp_customeri} == "personal")
{
sc_field_display({company_name}, off);
}
else
{
sc_field_display({personal_name}, off);
}


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación ReportPDF
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onHeader
onScriptInit
onScriptInit ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeInsertAll
onBeforeUpdateAll
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onScriptInit



sc_field_init_off

This macro is intended to inhibit the query fields on the initial load.

Fields inhibited by this macro can be enabled by using the "Columns" button.



Ex 01:

sc_field_init_off ({orderID}, {TotalValue});


Macro Scope

Aplicación Grid
onApplicationInit



sc_field_readonly

Esta macro establece dinámicamente un atributo de campo de formulario en 'ReadOnly'. Use esta macro solo para hacerlo en 'runtime'. De lo contrario, active / desactive este parámetro en la interfaz del formulario. sección "Solo lectura".

El parámetro on / off es opcional, utilizado por un evento ajax para definir si un campo será de solo lectura (Activado) o de solo lectura (Desactivado).

Ej. 1: para establecer un campo como de solo lectura incluso cuando el formulario está en "Modo de adición":
if (sc_btn_new)
{
sc_field_readonly ({my_field});
}

Ej. 2: para configurar un campo como de solo lectura de forma dinámica, utilice:
sc_field_readonly ({my_field});


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeInsertAll
onBeforeUpdateAll
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure



sc_field_style({Mi_Campo}, "Background-Color", "Size", "Color", "Family", "Weight")

This macro allows to modify the grid field style dinamically.

Parameter Description
Field Name
Background-Color (optional) Field cell background Color
Size (optional) Field font size
Color (optional) Font Color
Family (optional) Font family
Weight (optional) Font weight

Ex. 1:
sc_field_style({my_field}, '#33FF99', '15px', '#000000', 'Arial, sans-serif', 'bold');


Macro Scope

Aplicación Grid
onRecord



sc_format_num({Mi_Campo}, "Simb_Grp", "Simb_Dec", "Qtde_Dec", "Enche_Zeros", "Lado_Neg", "Simb_Monetário", "Lado_Simb_Monetario")

This macro its used to format numerical values.


Parameter
Description
My_Field Variable or field to format (The return is in the next variable).
Group_Symb Integer values grouping symbol.
Dec_Symb Decimals separator symbol.
Amount_Dec Number of decimals to be displayed.
Fill_Zeros Complete decimals with zeros (fill in) (S = yes and N = no).
Side_Neg Negative sign position. (1 = left and 2 = right)
Currency_Symb Monetary symbol to be displayed.
Side_Currency_Symb Currency symbol position. (1 = left and 2 = right).



Ex. 1: Formatting an integer.
sc_format_num({my_value}, '.', '', 0, 'N', '1', '');
Input value = 001234567890
Output value = 1.234.567.890

Ex. 2: Formatting a negative value and truncating decimals.
sc_format_num({my_value}, '.', '', 0, 'N', '1', '');
Input value = 0012345678.90-
Output value = -12.345.678

Ex. 3: Formatting a value with 4 decimals and filling with zeros.
sc_format_num({my_value}, '.', ',', 4, 'S', '1', '');
Input value = 0012345678.9
Output value = 12.345.678,9000

Ex. 4: Formatting a value with 2 decimals, filling with zeros and using monetary symbol.
sc_format_num({my_value}, '.', ',', 2, 'S', '1', 'US$');
Input value = 0012345678.9
Output value = US$ 12.345.678,90

Ex. 5: Formatting a value with 2 decimals, filling with zeros.
sc_format_num({my_value}, '.', ',', 2, 'S', '1', '');
Input value = .9
Output value = 0,90


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit



sc_format_num_region({Mi_Campo}, "Qtde_Dec", "Insert_Zeros", "Monetary_Sym")

This macro has the objective to format numbers, using the regional settings

Parameter
Description
My_Field Variable or field that has a value to be formated (if the value is 0 the result will be the same as the variable).
Qtde_Dec Amount of decimals that'll be displayed.
Insert_Zeros Complete with the non exisiting decimals (Y = yes and N = no).
Monetary_Sym Display monetary symbol (Y = yes and N = no).

Ex. 1: Formating a value with 2 decimal spaces, inserting the zeros and the monetary value.
sc_format_num_region({my_value}, "2", "Y", "Y");
Input value = 9
Output value = R$0,90


Macro Scope

Aplicación Blank Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból
onExecute onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad



sc_form_show'on' o 'off'

Esta macro muestra dinámicamente o no un formulario.
Por defecto, se muestra el formulario (estado "on").

Ex. 1: Doesn't display the form.
sc_form_show = 'off';


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onScriptInit
onLoad
onValidate
onScriptInit
onLoad
onValidate
onScriptInit
onLoadAll



sc_getfield('miCampo')

Esta macro se usa para asignar objetos (que representan el formulario del campo) a una variable de JavaScript, lo que permite al usuario acceder a las propiedades del objeto. Esta macro se ejecutará en control y formularios en los eventos y métodos de JavaScript.

EX:

Mostrando el valor del campo "cliente" de un formulario cli_js = sc_getfield ('cliente'); alerta (cli_js.value);


Macro Scope




sc_get_groupby_rule()

Esta macro se usa para recuperar el nombre de la regla Agrupación que se está utilizando en este momento. El valor de retorno es una Cadena que contiene el nombre de la regla.

Ex:

if (sc_get_groupby_rule() == "rule1")

{

[title] = "Sales X Region";

}



Macro Scope

Aplicación Gráfica Aplicación Grid
onFooter
onHeader
onScriptInit
onScriptInit
onNavigate
onRecord



sc_get_language

Esta macro devuelve la abreviatura del lenguaje utilizado.

Ex. 1:

$my_language = sc_get_language();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onFooter
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onRecord



sc_get_regional

Esta macro devuelve la abreviatura de la configuración regional utilizada..

Ex. 1:

$my_regional = sc_get_regional();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onFooter
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onHeader
onRecord



sc_get_theme

Esta macro devuelve el tema de aplicación utilizado.

Ex. 1:

$my_theme = sc_get_theme();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onFooter
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_groupby_label("Mi_Campo")

Esta Macro modifica dinámicamente la etiqueta del campo que se muestra en grupo por líneas.

Ex. 1:
sc_groupby_label('state') = "state grouping";


Ex. 2:
sc_groupby_label('balance') = "balance total";


Macro Scope

Aplicación Grid
onGroupBy



sc_hide_groupby_rule('group1', 'grop2', 'group3')

Esta macro se usa para deshabilitar las reglas de Agrupación por en tiempo de ejecución.


Macro Scope

Aplicación Gráfica Aplicación Grid
onApplicationInit onApplicationInit



sc_image(Imagen01.jpg)

This macro its used to copy images in some events or Javascript commands to load images to an application.

All images used in the applications are automatically copied to each application.

Ex. 1:
sc_image (img1.gif, img2.jpg);


Note: The images must exist in the development environment images directory (../devel/conf/sys/img/img/).


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onScriptInit
onLoad
onValidate
onApplicationInit
onScriptInit
onFooter
onScriptInit
onFilterInit onApplicationInit
onClick
onScriptInit
onLoad
onLoadRecord
onValidate
onApplicationInit
onScriptInit
onLoadAll
onValidateFailure
onValidateSuccess
onApplicationInit
onLoad
onLoad onApplicationInit
onScriptInit



sc_include("Archivo", "Fuente")

The Scriptcase allows the user to catalogue his PHP scripts to use in various applications.

To catalogue the scripts go to the ScripCase main menu at "Tools > Library" and use the "upload" option existing in the interface.

When a script is catalogued, the user has the option of the context choice where it will be stored, global level (Scriptcase), group level or user level.
- Public: All the projects will have acess.
- Project: Only the project users (the one's that will be loged at that time) will have acess.
- User: Only the user (the one's that will be loged at that time) will have acess.


The sc_include macro, the user must inform the script name that will be included and the source.
- Script Name: Script name to be included.

The Source context that the script was saved, that could be:
- Sys or Blank: Scriptcase global level.
- Prj: Group level.
- Usr: User level.


Ex. 1: Including a catalogued script to global level.
sc_include(my_script.php);



Ex. 2:
Including a catalogued script to the group level.
sc_include(my_script.php, grp);



Ex. 3: Including a catalogued script to the user level.
sc_include(my_script.php, usr);


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onHeader
onScriptInit
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onHeader
onScriptInit
onRecord



sc_include_lib("Lib1", "Lib2", ...)

Esta macro se usa para seleccionar dinámicamente las bibliotecas de aplicaciones.

PHP Libraries
JavaScript Libraries
tcpdf Jquery
fpdf_html jquery_thickbox
excel jquery_blockui
rtf tiny_mce
-
jquery_touch_punch
-
fusioncharts
-
jsmind
-
jkanban
-
orgchart

Ex. 1:

sc_include_lib ("tcpdf");

$pdf=new TCPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

Ex. 2:

?>
sc_include_lib ("jsmind");
< ?php


Macro Scope

Aplicación Blank Aplicación Grid
onExecute onScriptInit



sc_include_library("Destino", "Nombre de la biblioteca", "Archivo", "include_once", "Requerir")

This macro includes a PHP file from a library in the application. You must have a library created in Scriptcase to make use of this macro. To create a library, go to "Tools -> Libraries".

Parameter
Description
Target Tells you what the scope of the library. Can be "sys" for libraries of Public scope or "prj" for libraries of Project scope.
Library Name Name given to the library at the time of creation.
File Absolute path within the library.
include_once (optional) Make sure that the file will only be included once. If not informed, this value is set as "true".
Require (optional) If the file or library does not exist, the application to be executed and returns an error. If not informed, the value is set as "true".

Ex: Including a file from a library:
sc_include_library("prj", "phpqrcode", "qrlib.php", true, true);


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad



sc_label({Mi_Campo})

Esta macro se usa para modificar dinámicamente la etiqueta del campo de formulario de Consulta.



Ex. 1: Using the field name.
sc_label("Customer") = "Cust Name";



Ex. 2: Using a variable as paramenter.

sc_label({Customer}) = "Cust Name";



Ex. 3: Using a global variable.
sc_label([global_variable]) = "Cust Name";


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onScriptInit
onLoad
onRefresh
onScriptInit onClick
onScriptInit
onNavigate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onScriptInit



sc_language

Esta macro devuelve el idioma y la configuración regional.

Ex. 1:

echo "Language: ".{sc_language};


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onApplicationInit
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_ldap_login

$ldapConn = sc_ldap_login($server [, $domain, $user, $password, $dn, $group]);

Esta macro inicia la conexión y la vincula a las credenciales del usuario. Esta macro necesita los siguientes parámetros:

Server =
Domain =
User =
Password =
DN =
Group =

There are three possible returns:

Macro return Situation
(string)'ldap_connect_error' Connection error with LDAP host/service.
(string)'ldap_bind_error' Authentication error after successfull connection.
(resource) Successful connection and bind.

Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onApplicationInit
onValidate
onApplicationInit
onValidate
onApplicationInit
onValidate



sc_ldap_logout

Esta macro se usa para liberar la conexión después de usar la macro sc_ldap_login.

 

 

Ex1:

sc_ldap_logout();


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onApplicationInit
onValidate
onApplicationInit
onValidate
onApplicationInit
onValidate



sc_ldap_search( $filter = 'all', $attributes = array() )

Macro para realizar búsquedas en LDAP.

Parameter Description
$filter 'all' or 'member':
'all' returns all information that the logged user can see.
'member' returns the information aobut that member
$attributes Array of LDAP filter options.

Ex:

$result = sc_ldap_search($filter, array('mail', 'displayname'));


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onApplicationInit
onValidate
onApplicationInit
onValidate
onApplicationInit
onValidate



sc_link

Macro para realizar búsquedas en LDAP. (Columna, Aplicación, Parámetros, "Sugerencia", "Objetivo", Altura, Ancho)

This macro dynamically creates or modifies links between grid applications and other applications.

Column: Grid column field name to generate the link.
Application: Application name to establish the link.
Parameters: Parameters required by the called application.

Must be informed "=" (attribution sign) . More than one parameter must be separated by ";" (semicolon).

Hint: Observation or tip displayed when the mouse cursor passes over the link.

Target : Where the application will function call and may be:

Target
Descrição
"_self" For carrying on the same page (overrides the query);
"_blank" To run on another page (pop-up);
"iframeT" To run in an iframe above the Grid (top);
"iframeL" To run in an iframe, the left of the Grid (Left);
"iframeR" To run in an iframe, the left of the Grid (Left);
"iframeB" To run in an iframe below the Grid (Bot);
"modal" Opens a new window and blocks any interaction in the main window;

In the case of modal target, there are two optional parameters *:

*Height: Set the height of the modal window (default 440);
*Width: Set the width of the modal window (default 630);

Note: If omitted, will be assigned the value "_self".

Ex. 1: Creates a link to the costumer.php application, on the Id field, passing the global variable [global_costumer] as and the product field (local variable) {Id} to the costumer.php application:
sc_link(Id, costumer.php, product=[global_costumer]; Id={Id}, "Client Data", "_blank");



Ex. 2: Creating a dynamic link to another application depeding on the field valor {costumer_type} and opening it in a modal.
if ({costumer_type} == "F") {
sc_link (costumer_type, type_f.php, product=[global_costumer]; Id={Id}," Personal Data ", "modal", 500, 700);
}
else{
sc_link (costumer_type, type_a.php, product=[global_costumer]; Id={Id}," Company Data ", "iframeR");
}


Ex. 3: Creating a link to an URL: in this case, "paramater and target" have no effect. It will be executed redirecting to a informed URL.
sc_link (my_field, http://www.scriptcase.com, ,"hint of the link");


Macro Scope

Aplicación Grid Aplicación ReportPDF
onRecord onRecord



sc_log_add("Acción", "Descripción")

Esta macro está destinada a agregar un registro a la tabla de registro, lo que hace que el mensaje y / o el nombre de la acción personalizable para el desarrollador. Los parámetros macro pueden usar variables de PHP.

Ex:

sc_log_add ("access", "Application has been accessed by the user trial");


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Grid Aplicación Formulário
onExecute onValidate onScriptInit onValidate



sc_log_split({descripcion})

Esta macro está destinada a proporcionar acceso a la información escrita en la última inserción en la tabla de registro, lo que permite la manipulación de los datos antes y después de la actualización de registro que lo devuelve en un modo de conjunto. La información se almacena en el campo "descripción" de la tabla de registro en el formato de cadena con delimitadores

Ex:

$arr_description = sc_log_split({description});

Input: -> keys fields Array ( [clientid] => ANTON ) [fields] => Array ( [old] => Array ( [CEP] => 50710500 [Address] => Rua Desembargador Joao Paes 657 [City] => Farol [State] => RS ) [new] => Array ( [CEP] => 53230630 [Address] => Avenida Presidente Kennedy, 1001 [City] => Peixinhos [State] => PE ) ) )


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Grid Aplicación Formulário
onExecute onLoad onScriptInit onLoad



sc_lookup(Conjunto de datos, "Comando SQL", "Conexión")

This macro allows the user to execute SQL commands and returns the result to the "dataset" variable. The "dataset" structure is an array (line/column).

The "connection" parameter is optional. Use when the command is executed in a database different from that specified for the application.
Note: The connection parameter does not accept variable. You must enter the name of the connection that the SQL command will execute.


Ex. 1:
sc_lookup(dataset, "select customer_id, customer_name, credit_limit from customers" );

To have access to the first line (Dataset), use :
{customer_id} = {dataset[0][0]};
{customer_name} = {dataset[0][1]};
{credit_limit } = {dataset[0][2]};

To have access to the second line (Dataset), use:
{customer_id} = {dataset[1][0]};
{customer_name} = {dataset[1][1]};
{credit_limit} = {dataset[1][2]};

If occurs error in the execution of the SQL command, the variable attributed to the dataset will return as "false" and the error message will be available in the "dataset_erro" variable. It is also important to verify the select returned data, to prevent access to inexistent variables, once the output array only will be created if the select command returns data.


Ex. 2:
sc_lookup(my_data, "select customer_id, customer_name, credit_limit from customers");
if ({my_data} === false)
{
echo "Access error. Message=". {my_data_erro} ;
}
elseif (empty({my_data}))
{
echo "Select command didn't return data";
}
else
{
{customer_id} = {my_data[0][0]};
{customer_name} = {my_data[0][1]};
{credit_limit} = {my_data[0][2]};
}



Ex. 3:
The SQL command also can be composed of application fields (local variables) or of global variables:
sc_lookup(dataset, "select order_value from orders where clienteid = '{customer_id} ' and salesman_id = [var_glo_salesman]");

Note: The command must always finished with semicolon ";".

Note2: For a big result returned in the dataset we recomend the use of the macro sc_selec instead of this one.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarScriptInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_mail_send(SMTP, Usr, Pw, From, To, Asunto, Mensaje, Mens_Type, Copies, Copies_Type, Port, Connection_Type, Attachment, SSL)

Esta macro se usa para enviar correos electrónicos.

Parameter
Description
SMTP SMTP server name or IP address. (String or Variable that contains the server name)
Usr SMTP user name. (String or Variable that contains the user name)
Pw SMTP password. (String or Variable that contains the password)
From From email. (String or Variable that contains the email)
To List of the emails that will recieve the message, it could be a string or variable that cointains one or more emails separated by ";" or one variable that contains one array of emails.
Subject Message subject. (String or Variable that contains the subject)
Message Message body. (String or Variable that contains the message)
Mens_Type Message format: (T)ext or (H)tml.
Copies List of the emails that will recieve the message, it could be a string or variable that cointains one or more emails separated by ";" or one variable that contains one array of emails.
Copies_Type Type copies: BCC (Hiden copies) or CCC (Regular copies).
Port The port used by your e-mail server. Use the port 465 for the security type SSL, and the port 587 for the security type TLS or the port 25 for no security. If not informed, Scriptcase will set the default port: 25
Connection_Type Indicating a secure connection. Use S for SSL, T for TLS or N for non secure connections. If not informed, Scriptcase will set the default value:N.
Attachment Absolute path of the file that will be attached in the email
SSL Optional parameter to add SSL settings. If you need to add more than one setting, use ";" for separate them. Ex: $ssl = 'allow_self_signed=false;verify_peer=false';

Note: To use safe connection its required to have the PHP "php_openssl" extension enable.

Ex. 1:
sc_mail_send('smtp.meuserver.com.br', 'usr', 'pw', 'from@netmake.com.br'
, 'to@netmake.com.br', 'Test Email Subject', 'Message', 'H', 'abc@cop.com.br;zxy@cop.com.br', 'H', '', '', 'c:/test/arq.txt');


Ex. 2: Usising variables and defining the port.
sc_mail_send([glo_smtp], [usuar], [glo_pw], {from}, {to}, {subject}, {message}, 'T', [glo_copias], 'CCC', '419', 'S', {attached});


Ex. 3: No user and password.
sc_mail_send([glo_smtp], '', '', 'from.netmake.com.br', {to}, {sunject}, {message}, 'H', '', '', '', '', [glo_att]);

The amount of emails sent will be stored at the special variable "sc_mail_count".

If any error happend when the scriptcase try to send the email, the variable "sc_mail_ok" will recieve "false" and the error message will be stored on the variavle "sc_mail_erro".

Ex.4 :


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onHeader
onScriptInit
onRecord
onFilterInit
onFilterSave
onFilterValidate
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_make_link(Aplicación, Parámetros)

Esta macro crea una cadena que contiene un enlace a otra aplicación Scriptcase (al escribir código html).

Parameter
Description
Application Name of the application to establish the link.
Parameters Parameters necessary so called application. In the format: "=" (the attribution sign) . More than one parameter must be separated by ";" (semicolon).



Ex. 1: Creating a string with a link for the datacli.php application, without parameters passage.

$string_link = sc_make_link(datacli.php);



Ex. 2: Creating a string with a link for the application datacli.php, with parameters passage.

$string_link = sc_make_link(datacli, parm1={company};parm2=[glo_office]);


Macro Scope

Aplicación Blank Aplicación Gráfica Aplicación Grid Aplicación Controle
onExecute onFooter
onHeader
onScriptInit
onScriptInit
onNavigate
onRecord
onValidate
onValidateSuccess



sc_master_value('Objeto', Valor)

Actualice los datos en la aplicación principal , en tiempo real, de acuerdo con los cambios realizados en un campo determinado de la aplicación detalle .

Parameter
Description
Object Object name to be updated in master Application. It's not necessary the {} in a field name.
Value Object value. The value can be a field or a variable.



Ex. 1:

sc_lookup(result,"SELECT SUM(Total) FROM adm_order_itens WHERE OrderID = '{OrderID}'");

//Using sc_format_num() to format the value that will be updated in the master application
$value = sc_format_num({result[0][0]}, ',', '.', 2, 'S', 1, '');
sc_master_value('OrderPrice', $value);

* If the value, that will be sent to the master, be numeric, you have to use the sc_format_num() to format it. To see the macro documentation, click here.


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onScriptInit
onLoadAll
onRefresh



sc_menu_delete(Id_Item1)

Esta macro elimina elementos de menú pasados como parámetros. Se puede usar en aplicaciones de menú o en el menú de árbol.

Observe que los parámetros utilizados en esta macro son la "ID" de los elementos.

Si se elimina un elemento del menú y tiene "nodos", también se ocultarán.


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_menu_disable(Id_Item1)

Esta macro desactiva los elementos del menú que pasan como parámetros. Se puede usar en aplicaciones de menú o menús de árbol.

Los parámetros pasados son elementos "ID". Los elementos del menú se desactivan recursivamente (cuando un elemento del submenú está desactivado, sus "nodos" también se desactivan).


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_menu_force_mobile(boolean)

Esta macro se usa para forzar la creación de menús en dispositivos móviles.

El parámetro (verdadero o falso) es opcional. Si no se pasa ningún valor, usará el valor "verdadero" (habilite el modo móvil)

 

Ex1:

sc_menu_force_mobile(true);

Ex2:

sc_menu_force_mobile(false);


Macro Scope

Aplicación Menu Aplicación Menú Arból
onLoad onApplicationInit
onLoad



sc_menu_item

Esta variable solo está disponible para la aplicación de menú y tiene el objetivo de dar acceso a un ítem del menú que fue seleccionado, de esta manera el usuario puede tomar las desiciones antes de ejecutar la aplicación.

Ex. 1: To clean global variable.
if ({sc_menu_item} == "item_1")
{
sc_reset_global([global1], [global2]);
}


Ex. 2: If an application requires a global variable another application can initialize it accordingly.
if ({sc_menu_item} == "item_5" && (!isset([glo_employ]) || empty([glo_employ])))
{
sc_redir(apl_inf_emp);
}


Ex. 2: Use the button on the toolbar menu.

if ({sc_menu_item} == "btn_1")
{
sc_apl_conf("form_customer", "start", "new");
}


Macro Scope

Aplicación Menu Aplicación Menú Arból
onExecute onApplicationInit
onExecute



sc_redir(Aplicación, Parámetro01; Parámetro02; Destino, Error, height_modal, width_modal)

This macro its used to redirect the processing to other application or URL.


If the redir uses parameters, these must be passed in the following format:
1) After the name of the application, use the comma delimiter (,) then
2) = (equal sign) .
3) More than one parameter, must be separated by semicolon (;)
4) The target determine which application is opened (default=_self): _self, _parent, _blank or modal.
5) Optional parameter to set error messages redirection in the application: "F" redirects if there is error in the application (default value) and "E" does not redirect.


OBS. If your connection uses transaction control the use of this macro on the events onAfterInsert, onafterupdate, onAfterDelete, onBeforeInsert, onbeforeupdate or onBeforeDelete should come after the use of macro sc_commit_trans so this way it will save the form changes.

Esta macro no admite el uso del parámetro Modal cuando se utiliza en un botón Run.



Ex. 1: Application without parameters nor target.
if ([global_user] == "test")
{
sc_redir(application_x.php);
}

Ex. 2: Application with parameters and without target.
if ([global_user] == "test")
{
sc_redir(application_x, parm1={var_test}; parm2="xxx");
}

Ex. 3: Application without parameters and with target.
if ([global_user] == "test")
{
sc_redir(application_x, "", "_parent");
}

Ex. 4: Application with parameter and target.
if ([global_user] == "test")
{
sc_redir(application_x, parm1={var_test}; parm2="xxx", "_blank");
}

Ex. 5: URL.
if ([global_user] == "test")
{
sc_redir(http://www.my_page.com);
}

OBS. Everthing that was passed as parameter to the called application will be avaliable as global variable.

EX: sc_redir(employee.php, parm1={var_test}; parm2="xxx", "_blank");

In the employee.php application the parameters will be acessible at [parm1] and [parm2]


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onValidate
onValidateSuccess
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onFilterInit
onFilterValidate
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onValidate
onValidateSuccess
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit



sc_reset_apl_conf("Aplicación", "Propiedad")

This macro have the objective to delete all modifications effected by the sc_apl_conf macro.
The property parameter its opicional, if its passed it will only erase the modification from that specific application.


Ex. 1: Deleting the modifications of the "my_application" application, property "start".
sc_reset_apl_conf("my_application", "start");



Ex. 2: Deleting the modifications of the "my_application" application.
sc_reset_apl_conf("my_application");



Ex. 3: Deleting the modifications of all the applications.
sc_reset_apl_conf();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onCalendarApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_reset_apl_default

Esta macro se debe utilizar cuando es necesario quitar el control de la macro sc_apl_default() en las aplicaciones.

Ex1:

sc_reset_apl_default();


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onScriptInit onScriptInit onScriptInit onScriptInit onScriptInit onScriptInit



sc_reset_apl_status

Esta macro tiene el objetivo de limpiar todas las variables de seguridad, establecidas a través de la macro sc_apl_status.

Ex. 1:

sc_reset_apl_status();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_reset_change_connection

Esta macro tiene el objetivo de borrar los cambios realizados utilizando la macro "sc_change_connection".

Ex. 1:

sc_reset_change_connection();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onLoad onScriptInit



sc_reset_connection_edit

Esta macro deshace las ediciones de conexión realizadas por la macro "sc_connection_edit"..

Ex. 1:

sc_reset_connection_edit();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_reset_connection_new

Esta macro deshace las conexiones hechas por la macro "sc_connection_new". sc_reset_connection_new ();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_reset_global([Global_Variable1], [Global_Variable2] ...)

Esta macro tiene el objetivo de eliminar variables globales, almacenadas en la sesión de PHP.

Ex. 1:

sc_reset_global ([Login], [Pass]);


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onGroupBy
onHeader
onScriptInit
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onLoad onApplicationInit
onFooter
onHeader
onRecord



sc_reset_menu_delete

Esta macro se usa para restaurar un elemento de menú, eliminado por la macro "sc_menu_delete".

Ex. 1:

sc_reset_menu_delete();


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_reset_menu_disable

Esta macro tiene el objetivo de habilitar un elemento del menú, deshabilitado por la macro "sc_menu_disable".

Ex. 1:

sc_reset_menu_disable();


Macro Scope

Aplicación Menu Aplicación Menú Arból
onApplicationInit
onLoad
onApplicationInit
onLoad



sc_rollback_trans

Esta macro se usa para cancelar un conjunto de transacciones en la base de datos.

El parámetro "Conexión" es opcional, solo se usa si el comando se ejecuta en una base de datos diferente desde la especificada a la aplicación.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onHeader
onRecord



sc_script_name

Esta macro está disponible para las aplicaciones MENÚ para acceder al nombre de la aplicación que se seleccionó en el menú. Permite al usuario tomar decisiones antes de ejecutar la aplicación si se requiere un proceso previo para esa aplicación.


Ex. 1: To clean global variables.
if ({sc_script_name} == "apl1")
{
sc_reset_global([global1], [global2]);
}


Macro Scope

Aplicación Menu Aplicación Menú Arból
onExecute onExecute



sc_select(conjunto de datos, "Comando SQL", "Conexión")

This macro executes the SQL commands passed as parameter and access the "dataset" in the command.

Different from sc_lookup macro, this macro doesn't manipulate the dataset (the user is responsible for all the manipulation).

If an error occurs in the sql command execution, the variable attributed to the database returns as "false" and the error message is available in the "dataset_error" variable.

The connection parameter is optional, use only if the command is executed in a data base different from the specified in the application.


Ex. 1:

sc_select(my_data, "select clientId, clientName, limitecred from costumers");
if ({my_data} === false)
{
echo "Access error. Message =". {my_data_erro};
}
else
{
while (!{my_data}->EOF)
{
{clientName} = {my_data}->fields[1];
{my_data}->MoveNext();
}
{my_data}->Close();
}



Ex. 2: The SQL command can passed as application fields (local variables) or of global variables.
sc_select(dataset,"select price order from order where clientId = '{clientId}' and cod_Seller = [var_glo_seller]");

Note: The command must always be finished with semicolon";".


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarScriptInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onFooter
onHeader
onRecord



sc_select_field({Campo})

This macro modify dynamically the SELECT:
Is possible to modify dynamically the grid fields through the dynamic modification of the original select.


Ex. 1:
A table with the columns year and the months from January to December is used to create a grid using a parameter, displays the years and only a specific month. Passing the parameter as a global variable named "show_month", in the application is found the following structure:

Select Clause: select year, pair_month from table

sc_select_field(pair_month) = [show_month];
sc_label(pair_month) = [show_month];
Modify the select, and the grip column label.

It is possible, during the grid execution time, modify the grid ORDER BY clause.
At least one ORDER BY is required in the original grid SQL command to allow the substitution execution during the grid time.

Ex. 2: Select Clause: select code, name, value from table order by code. To change the order, from code to name, use: sc_select_order("code") = "name";

Note: This command must be in the context of the evento "onInit";


Macro Scope

Aplicación Gráfica Aplicación Grid
onScriptInit onScriptInit



sc_select_order("Campo")

It is possible, during the grid execution time, modify the grid ORDER BY clause.
At least one ORDER BY is required in the original grid SQL command to allow the substitution during the grid execution time.



Ex. 1: Select Clause: SELECT code, name, price FROM table ORDER BY code
To change the order from code to name, we will have:
sc_select_order("code") = "name";



Ex. 2: Select Clause: SELECT code, name, price, date FROM table ORDER BY code, name, price
To change the order from name to date, we will have:
sc_select_order("name") = "date";


Note:
This command must be in the context of "process before the select".


Macro Scope

Aplicación Gráfica Aplicación Grid
onScriptInit onHeader
onScriptInit



sc_select_where(add)

Is possible, during grid execution time to add a field/condition to the search WHERE clause.

Ex. 1: It adds the contente between the quotes (") in the grids select.
if (empty({sc_where_current}))
{
sc_select_where(add) = "where campoX > [global]";
}
else
{
sc_select_where(add) = "AND campoX > [global_variable]";
}

Note: This command must be in the context of "process before the select".


Macro Scope

Aplicación Gráfica Aplicación Grid
onScriptInit onHeader
onScriptInit



sc_send_mail_api($arr_settings)

Esta macro permite el envío dinámico de correos electrónicos incrustados con las API Mandrill y Amazon SES APIs. También es posible enviar correos electrónicos usando el protocolo SMTP.

Esta macro utiliza los mismos parámetros de Mandril para el envío de correo, independientemente de la puerta de enlace (Mandril, Amazon SES o SMTP) seleccionada click aqui y vea la lista de parametros que pueden ser usadas.

Esta macro contiene un solo parámetro" $arr_settings", que recibe un array con un email enviando información.

Para obtener más información sobre los parámetros de mandril click aqui
.
Parametro
Descripción
$arr_settings Array con informacion para el uso de APIs.

Array indices
Descripción
profile Nombre de algunas API que ya esten configuradas en "Herramientas> API", Pueden ser vistas en el Ejemplo 1. Cuando se informa un perfil las settings index no deben de ser informadas.
settings Confirguración del servidor de envio de E-mail. La información debe confirmar a la API usada. Nota: Cuando se informa la configuración, el perfil index no es configurado.
message Mensaje a ser enviando por email, Asunto, cuerpo y destinatario.

Ejemplo 1: Enviando un ejemplo pre configurado en perfil en "herramientas > API".
if({api_type} == 'smtp' ){
	$var_config = array(
		'profile' => 'yahoo_example',

		'message' => [
			'html'          => {email_body},
			'text'          => '',
			'to'            => $arr_merge,
			'subject'       => {subject}
		]
	);
}

sc_send_mail_api($var_config);

Ejemplo 2: Enviando e-mail via SMTP
$smtp_server = "smtp.mail.yahoo.com";
$smtp_port = "465";
$smtp_user = "scriptcase.export";
$smtp_password = "scriptcase.export";
$from_email = "scriptcase.export@yahoo.com";
$from_name = "Scriptcase Export";

if ( {api_type} == 'smtp' ){
	$var_config = array(

		'profile' => '',

		'settings' => [
				'gateway'       => 'smtp',
				'smtp_server'   => $smtp_server,
				'smtp_port'     => $smtp_port,
				'smtp_user'     => $smtp_user,
				'smtp_password' => $smtp_password,
				'from_email'    => $from_email,
				'from_name'     => $from_name
		],

		'message' => [
				   'html'          => {email_body},
				   'text'          => '',
				   'to'            => $arr_merge,
				   'subject'       => {subject}
		]
	);
}

sc_send_mail_api($var_config);

Ejemplo 3: Enviando email using Mandrill API
if({api_type} == 'mandrill' ){
	$var_config = array(
		'settings' => [
				   'gateway'       => 'mandrill',
				   'api_key'   	   => {api_key},
				   'from_email'    => {from_email},
				   'from_name'     => {from_name}
		],

		'message' => [
				   'html'          => {email_body},
				   'text'          => '',
				   'to'            => array($arr_merge),
				   'subject'       => {subject}
		]
	);
}

sc_send_mail_api($var_config);

Ejemplo 4: Enviando email usando Amazon SES API
if({api_type} == 'ses' ){
	$var_config = array(
		'settings' =>  [
	        'gateway' => 'ses',
	        'region' => {ses_region},
	        'api_key' => {api_key},
	        'api_secret' => {ses_secret},
	        'from_email'    => {from_email}
	    ],
	    'message' => [
	        'html'          => {email_body},
	        'text'          => '',
	        'to'            => array($arr_merge),
	        'subject'       => {subject}
	    ]
	);
}

sc_send_mail_api($var_config);

Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onHeader
onScriptInit
onRecord
onFilterInit
onFilterSave
onFilterValidate
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_send_sms($arr_settings)
Esta macro recibe una matriz como el parámetro de configuración que contiene el mensaje, el destinatario, el gateway y la clave API.
Parámetro Descripción
$arr_settings Matriz con la información para usar en la macro.

Índice de matriz Descripción
to: Destinatario de SMS
message: El contenido del mensaje de texto
gateway: API para ser utilizada (clickatell, plivo o twilio)
auth_token: Token de Autenticación API

Ejemplo 1 - Estructura básica de envío:
$arr_settings = array(
	'message' => 
	[
		'to' => '+55999999999',
		'message' => 'Scriptcase SMS'
	],
	'settings' => 
	[
		'gateway' => 'clickatell',
		'auth_token' => '54Cik1-gQ4GqtuN70d4y4w=='
	]);

sc_send_sms($arr_settings);

Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_send_whatsapp($arr_settings)

Esta macro recibe una matriz como parámetro de configuración que contiene el nombre de la API establecido en Scriptcase, el mensaje y el número de destino.

Los parámetros que se utilizarán son:
  • profile: Aquí se le informará el nombre de la API configurado en la interfaz de Scriptcase.
  • message: En este parámetro se informa el mensaje que será enviado a través de la macro.
  • to: Permite informar el número de destino del mensaje.
Exemplo:
$arr_settings = array(
                 'profile'  => 'ChatAPI',
                 'message'  => 'Test whatsapp',
                 'to' => '558182499699'
             );

sc_send_whatsapp($arr_settings);

Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onCalendarScriptInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_seq_register

This macro provide the record (being processed) grid sequential number. It can be used, only in onRecord event.

Ex. 1:
if({sc_seq_register} == 10) {
// last line of the page
{total} = {sum_total};
}


Macro Scope

Aplicación Grid
onRecord



sc_set_fetchmode(parm);

This macro allows to change the type of return from the dataset of the select commands.
The macro will processed before running the SQL command. Informing the parameter, the dataset will return the index or the name of the column.

parm = 0 : Returns an array with the index and the name of columns (Scriptcase's Default)
parm = 1 : Returns an array only with indexes of the columns

Example 1: Returning an array with the name of the columns.

sc_set_fetchmode(0);
sc_select(my_data, "SELECT customerid, stateid, birthdate, creditlimit FROM customers where customerid = 'ALFKI'");

while (!$my_data->EOF){
$meus_dados->fields['customerid'];
$customer = $my_data->fields['stateid'];
$customer = $my_data->fields['birthdate'];

$my_data->MoveNext();
}
$my_data->Close();

--------------------------------------------------------------------------------------

Example 2: Returning an array with the index of the columns.

sc_set_fetchmode(1);
sc_select(my_data, "SELECT customerid, stateid, birthdate, creditlimit FROM customers where customerid = 'ALFKI'");

while (!$my_data->EOF){
$my_data->fields[1];
$customer = $my_data->fields[2];
$customer = $my_data->fields[3];

$my_data->MoveNext();
}
$my_data->Close();


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onExecute
onLoad
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_set_focus('Campo')

Esta macro se usa para establecer el foco en un campo de formulario.

Ej. 1:

sc_set_focus ('nombre');


Macro Scope

Aplicación Calendario Aplicación Formulário Aplicación Controle
OnClick
onLoad
onRefresh
onValidateSuccess
OnClick
onLoad
onRefresh
onValidateSuccess
onApplicationInit
onScriptInit
onLoadAll
onRefresh



sc_set_global($variavel_01) ou ({Mi_Campo})

This macro its used to register global variables. Create a session variable with the same name and content of the local variable.

NOTE: This macro will be discontinued soon. You should use the method of creating global variables ​​using brackets. Ex: [var_glo_user] = "test";


Ex. 1: Registering a users variable.
$my_var = "mary";
sc_set_global($my_var);

Creates a session variable with the name "my_var" with the "mary" content.

Ex. 2: For register a field value as a session variable.
sc_set_global({fieldname});

Note: This macro doesn't attribute values. Only register the session variables from PHP.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_set_groupby_rule

Esta macro se usa para seleccionar una regla de agrupación en el tiempo de ejecución en el evento Application Init.


Macro Scope

Aplicación Gráfica Aplicación Grid
onApplicationInit onApplicationInit



sc_set_language('String Language')

This macro allows to define the application language dinamically.

Ex. 1: Changes the laguage to English.
sc_set_language('en_us');



Ex. 2: Changes the laguage to Spanish.
sc_set_language('es');

It still allows to define the language and regional settings of the applications using a delimiter ";" between the parameters.

Ex. 1: Changing the language to English and regional settings to Canada.
sc_set_language('en_us;en_ca');



Ex. 2:
Changing the language to Spanish and regional settings to Mexico.
sc_set_language('es;es_mx');



Ex. 3:
Changing the language to Germanian and regional settings to Luxembourg.
sc_set_language('de;de_lu');



Ex. 4: Changing the language to Eslovak and regional settings to Slovak Republic.

sc_set_language('sk;sk_sk');


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onFilterValidate
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_set_pdf_name"sc_mi_archivo.pdf"

Los archivos resultantes de los datos exportados (PDF, XLS, XML, CSV, WORD y RTF) se almacenan en el directorio "temporal" especificado en la configuración del Scriptcase en desarrollo y en producción, con el prefijo "sc_" seguido de un identificación única para que el archivo de un usuario no se sobrescriba entre sí.

El prefijo "sc_" hace que Scriptcase elimine los archivos antiguos. Para asignar diferentes nombres a los patrones de Scriptcase, puede usar las siguientes macros:

- sc_set_csv_name

- sc_set_pdf_name

- sc_set_rtf_name

- sc_set_xml_name

- sc_set_xls_name

- sc_set_word_name

Ex1:

sc_set_xls_name = "my_file.xls";

Ex2: sc_set_csv_name = "sc_my_new_file.csv";

NOTE:

1) Estas macros deberían usarse en el evento "onApplicationInit".

2) Incluso utilizando la macro, se mantuvo el prefijo "sc_" (como Ex2), Scriptcase eliminará el archivo cuando alcance el límite de tiempo de espera configurado (consulte la configuración "File Lifetime" en el entorno de producción).


Macro Scope

Aplicación Gráfica Aplicación Grid
onApplicationInit onApplicationInit



sc_set_regional('String Regional')

Esta macro permite cambiar dinámicamente la configuración regional de la aplicación.

Ex. 1:
sc_set_regional('en_us');


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onFilterValidate
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_set_theme('String Theme')

Esta macro permite definir dinámicamente el tema de la aplicación.

Ex. 1:

sc_set_theme('Newyellow');



Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onApplicationInit
onFilterInit
onFilterValidate
onApplicationInit
onScriptInit
onApplicationInit
onScriptInit
onValidate
onValidateSuccess
onApplicationInit
onLoad
onApplicationInit
onLoad
onApplicationInit
onScriptInit



sc_site_ssl

This macro its used to verifie if a used site is a safe site. (https protocol)



Ex. 1: Using an affirmative.
if (sc_site_ssl)
{
echo "ok - Safe site";
}



Ex. 2: Using a negative.
if (!sc_site_ssl)
{
echo "Warning - Unsafe site";
}



Ex. 3: Redirecting if the site isn't safe.
if (!sc_site_ssl)
{
sc_redir("http://www.erro_page.com/") ;
}

Note: This macro works only to the web server llS.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onClick
onScriptInit
onLoadAll
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onLoad
onLoad onApplicationInit
onScriptInit



sc_sql_injection({Mi_Campo}) o ($Mi_Variable)

This macro its used to protect the field/variable against "sql injection".

Macro used for protection against "sql injection" in commands generated by the developer when using the macros: sc_lookup, sc_select or sc_exec_sql.


Ex. 1: Protecting a local variable:
$field_protect = sc_sql_injection({my_field});


Ex. 2: Protecting an user variable:
$field_protect = sc_sql_injection($my_var);

Note: that all database accesses, generated for the Scriptcase, have protection against "sql injection".


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onExecute
onLoad
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



sc_sql_protect(Valor, "Tipo", "Conexión")

Esta macro protegerá el valor pasado como parámetro de acuerdo con la base de datos utilizada, el parámetro "Conexión" es opcional, si no está informado, el script usará la conexión predeterminada.

The "Type" parameter so far can only use the "Date" value.

Ex 01: In this example we will protect the dates passed as parameter so this way it can be correctly interpreted to the ACCESS database.

sc_select_where(add) = " AND news_noticias.noticia_data_pub
BETWEEN ".sc_sql_protect($data_inicial, "date")." AND ".sc_sql_protect($data_final, "date")."";


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onExecute onValidate onClick
onFooter
onGroupBy
onScriptInit
onNavigate
onRecord
onFilterValidate onAfterDeleteAll
onAfterInsertAll
onAfterUpdateAll
onBeforeDeleteAll
onBeforeInsertAll
onBeforeUpdateAll
onValidate
onLoadAll
onValidate
onRecord



sc_text_style({My_Field}, "Color de fondo", "Tamaño", "Color", "Familia", "Peso")

Esta macro permite modificar el estilo de texto desde el campo de la cuadrícula dinámicamente..

Parameter Description
Field Name
Background-Color (optional) Text cell background Color
Size (optional) Text font size
Color (optional) Text Color
Family (optional) Text family
Weight (optional) Text weight

Ex. 1:
sc_text_style({my_field}, '#33FF99', '15px', '#000000', 'Arial, sans-serif', 'bold');


Macro Scope

Aplicación Grid
onRecord



sc_time_diff({datetime_01}, "Date_01 Format", {datetime_02}, "Date_02 Format")
sc_time_diff({datetime_01}, "Date_01 Format", {datetime_02}, "Date_02 Format");

Esta macro calcula la diferencia entre hora, minutos y segundos para dos valores de fecha / hora.

El resultado se devolverá en una matriz, con las dimensiones [0], [1] y [2] que contienen horas, minutos y segundos, respectivamente.
Parâmeter
Description
datetime_01
Value or variable for datetime_01
Date_01 Format
Value or variable to specify the format of datetime_01
datetime_02
Value or variable for datetime_02
Date_02 Format
Value or variable to specify the format of datetime_02
Ex. 1: General Format
{differences}  = sc_time_diff({datetime_01}, "Date_01 Format", {datetime_02}, "Date_02 Format");

{diff_hours}    = {differences[0]};
{diff_minutes}  = {differences[1]};
{diff_seconds}  = {differences[2]};


Ex. 2: Returning positive values
{differences} = sc_time_diff("2012-07-25 05:33:45", "yyyy-mm-dd hh:ii:ss", "2012-07-21 15:22:57", "yyyy-mm-dd hh:ii:ss");

{differences[0]} would be equal to 86 (hours)
{differences[1]} would be equal to 10 (minutes)
{differences[2]} would be equal to 48 (seconds)


Ex. 3: Returning negative values
{differences} = sc_time_diff("2012-07-21 15:22:57", "yyyy-mm-dd hh:ii:ss", "2012-07-25 05:33:45", "yyyy-mm-dd hh:ii:ss");

{differences[0]} would be equal to -86 (hours)
{differences[1]} would be equal to -10 (minutes)
{differences[2]} would be equal to -48 (seconds)


Ex. 4: Considering only the hours format - Positive return
{differences} = sc_time_diff("18:14:55", "hh:ii:ss", "10:55:22", "hh:ii:ss");

{differences[0]} would be equal to 7  (hours)
{differences[1]} would be equal to 19 (minutes)
{differences[2]} would be equal to 33 (seconds).


Ex. 5: Considering only the hours format - Negative return
{differences} = sc_time_diff ("10:55:22", "hh:ii:ss", "18:14:55", "hh:ii:ss");

{differences[0]} would be equal to -7  (hours)
{differences[1]} would be equal to -19 (minutes)
{differences[2]} would be equal to -33 (seconds).

Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onLoad onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_trunc_num({Mi_Campo}, Cantidad_Decimal)

This macro is used to truncate numerical values which exceed the decimals amount specified.

Parâmetro
Descrição
My_Field Variable with value to format (return in the same variable).
Decimal_Number Amount of decimals to display.




Ex. 1:
sc_trunc_num({my_value}, 2);

Input value = 1250.235
Output value = 1250.23

Input value = 1250.2
Output value = 1250.20

Input value = 1250
Output value = 1250.00


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onClick
onApplicationInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_url_exit(URL)

This macro modifies the application exit URL.


Ex. 1:

sc_url_exit(http://www.scriptcase.net);



Ex. 2:

sc_url_exit(aplx.php);


Macro Scope

Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onClick
onScriptInit
onLoadAll
onValidate
onValidateFailure
onValidateSuccess
onRecord



sc_url_library("Destino", "Nombre de la biblioteca", "Archivo")

Esta macro devolverá la ruta del archivo, dentro de una biblioteca, para ser utilizada en las aplicaciones de script. Es necesario tener una biblioteca creada en Scriptcase para usar esta Macro. Para crear una biblioteca, vaya al menú "Herramientas> Biblioteca".

Paramenter
Description
Target Tells you what the scope of the library. Can be "sys" for libraries of Public scope or "prj" for libraries of Project scope.
Library Name Given name to the library at the time of creation.
File Absolute path within the library.

Ex. 1 - Importing CSS files from a library:
<*link rel="stylesheet" type="text/css" href="<*?php echo sc_url_library('prj', 'bootstrap-3.3.2-dist', 'css/style1.css'); ?>" />

Ex. 2 - Importing a JS file from a library:
<*script type="text/javascript" src="<*?php echo sc_url_library('prj', 'bootstrap-3.3.2-dist', 'js/bootstrap,js'); ?>">

NOTE: Note that you need to remove the asterisk (*) form the examples above to use it.


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onCalendarApplicationInit
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad



sc_user_logout('nombre de variable', 'contenido de variable', 'apl_redir.php', 'target')

Esta macro se utiliza para registrar el usuario en el sistema.

If the target is not informed, the default value is "_top".

 

Ex:

sc_user_logout('usr_login', 'admin', 'ctrl_login.php', '_self');


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Formulário Aplicación Controle Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onValidate
onValidateSuccess
onHeader
onScriptInit
onScriptInit onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onScriptInit
onLoad
onNavigate
onLoadRecord
onValidate
onValidateSuccess
onScriptInit
onLoadAll
onValidate
onValidateSuccess
onHeader
onScriptInit
onRecord



sc_warning'on' o 'off'

Esta macro activa o desactiva dinámicamente el control de mensajes de advertencia.

Los mensajes de advertencia se generan cuando se hace referencia a una variable inexistente, un elemento de una matriz inexistente, etc

Ex. 1: para desactivar el mensaje (no mostrar).
sc_warning = 'off';



Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



sc_webservice("Método", "URL", "Puerto", "Método de envío", "Matriz de parámetros", "Matriz de ajustes", "Tiempo de espera", "Retorno

This macro is used to communicate with a web service.

Parameter
Description
Method Informs what method will be used to access the web service. Ex: file_get_contents or curl.
URL URL used to access the web service.
Port Port used to access the web service.
Send Method Defines the request method of the web service. Can be GET ou POST.
Parameters Array Parameter's array used to access the web service, varying according to the accessed service.
Settings's Array(optional) Parameter's array for configuration of access method used.
Timeout(optional) Service's access timeout.
Return(optional) Web service's return method. When it is set as "True", the return from the web service comes as an array, if it is set as "False" it will return as the original web service format. Default: True

$parms = array(
'METHOD' => 'GetBalance',
'RETURNALLCURRENCIES' => 1,
'VERSION' => urlencode(51.0),
'USER' => urlencode({paypal_api_login}),
'PWD' => urlencode({paypal_api_password}),
'SIGNATURE' => urlencode({paypal_api_key})
);
$parms = http_build_query($parms);

Ex1 - Using the macro file_get_contents:
sc_webservice('file_get_contents', $webservice_url, $_SERVER["SERVER_PORT"], "POST", $parms, array(), 30);

Ex2 - Using the macro with CURL:
$response = sc_webservice("curl", {paypal_type}, 80, "POST", $parms, array(CURLOPT_RETURNTRANSFER => true, CURLOPT_SSL_VERIFYPEER=>false), 30);


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onBlur
onChange
onClick
onFocus
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad



sc_where_current

Variable to reference the application where clause plus the filter selections(if any). Reflects the where clause currently used.

Ex. 1:
$save_current_where = {sc_where_current};


Macro Scope

Aplicación Gráfica Aplicación Grid Aplicación ReportPDF
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFooter
onHeader
onScriptInit
onRecord



sc_where_filter

Esta macro se usa para recuperar el contenido generado por el "filtro", de acuerdo con sus selecciones. Estos son los datos que se agregarán a la cláusula original de la aplicación después de la sumisión del filtro


Ex. 1:
$save_current_filter = {sc_where_filter};



Macro Scope

Aplicación Gráfica Aplicación Grid Aplicación ReportPDF
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFooter
onHeader
onScriptInit
onRecord



sc_where_orig

Esta macro guarda la cláusula where original de la aplicación. Se puede usar dentro de los eventos de ScriptCase, para manipular los datos o mostrarlos en cualquier lugar de la consulta.

Ex. 1:
$save_where = {sc_where_orig};


Macro Scope

Aplicación Gráfica Aplicación Grid Aplicación ReportPDF
onFooter
onHeader
onScriptInit
onClick
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFooter
onHeader
onScriptInit
onRecord



sc_zip_file("Archivo", "Zip")

Esta macro se usa para generar archivos ZIP a partir de una lista de archivos y / o directorios. El parámetro de archivo debe ser uno de los siguientes:

- Nombre de archivo
- Nombre de directorio
- Una variable que contiene una matriz, que contiene una lista de archivos y / o directorios.
- Una variable un archivo o un nombre de directorio.
- Una matriz que contiene variables, que contiene una lista de archivos y / o directorios.

El parámetro zip debe contener el nombre del archivo zip generated, or the path to the file.


Ex. 1: Single file compressing.
sc_zip_file("/test/sample.htm", "/tmp/test.zip");


Ex. 2:
Single directory compressing.
sc_zip_file("/test", "/tmp/test.zip");


Ex. 3:
Multiple files and directories in an array.
$prep = array();
$prep[] = "/test/sample.htm";
$prep[] = "/test";
sc_zip_file($prep, "/tmp/test.zip");



Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute onAfterDelete
onAfterInsert
onAfterUpdate
onApplicationInit
onBeforeDelete
onBeforeInsert
onBeforeUpdate
onScriptInit
onLoad
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onFooter
onHeader
onScriptInit
onScriptInit onApplicationInit
onFilterInit
onFilterSave
onFilterValidate
onAfterDelete
onAfterDeleteAll
onAfterInsert
onAfterInsertAll
onAfterUpdate
onAfterUpdateAll
onApplicationInit
onBeforeDelete
onBeforeDeleteAll
onBeforeInsert
onBeforeInsertAll
onBeforeUpdate
onBeforeUpdateAll
onClick
onScriptInit
onLoad
onNavigate
onLoadRecord
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onClick
onScriptInit
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onApplicationInit
onExecute
onLoad
onApplicationInit
onFooter
onHeader
onScriptInit
onRecord



Variables de autenticación

Estas variables deben definirse en aplicaciones con exportación de PDF en entornos con autenticación integrada

Variables
Description
[sc_pdf_usr] Authentication User.
[sc_pdf_pw] Authentication Password


Ex. 1:On a login application, it is possible to set these variables from the info given by the user:

[sc_pdf_usr] = {login_usr};
[sc_pdf_pw] = {senha_usr};



Macro Scope

Aplicación Grid Aplicación Formulário
onApplicationInit
onFooter
onGroupBy
onScriptInit
onScriptInit



Variables de base de datos

Variables globales que contienen valores de acceso a la base de datos utilizados por la conexión principal.

Variables
Description
sc_glo_server Server name.
sc_glo_db Database name.
sc_glo_db_type Database type (mssql, oracle, mysql, etc).
sc_glo_user Connected user name.
sc_glo_pass Database password access.
sc_glo_cript_pass Encrypted password (S/N).
sc_glo_decimal_db Used decimal separator (point or comma).



Ex. 1:

$my_database = [sc_glo_db];



These variables only reference the values without updating it (it is not possible to attribute/modify the values). To define user and the password to connect to the database, use the following variables:

Variables
Description
sc_db_master_usr User login to be used.
sc_db_master_pass Password to be used.
sc_db_master_cript Encrypted password (S/N) (see sc_encode macro).

Important: These variables only take effect during next application execution remaining valid during all the session (unless modified).


Ex. 2:
An application type "control" with a form created with information "login" and encrypted "password". These data must be used to connect to the database, during the system applications execution.
$temp_pass = sc_encode({password});
[sc_db_master_usr] = {login};
[sc_db_master_pass] = $temp_pass;
[sc_db_master_cript] = "S";


Macro Scope

Aplicación Blank Aplicación Calendario Aplicación Gráfica Aplicación Grid Aplicación Búsqueda Aplicación Formulário Aplicación Controle Aplicación Menu Aplicación Menú Arból Aplicación ReportPDF
onExecute ajaxFieldonBlur
Onchange
OnClick
OnFocus
onFooter
onHeader
onScriptInit
onFooter
onGroupBy
onHeader
onScriptInit
onNavigate
onRecord
onFilterInit
onFilterRefresh
onFilterSave
onFilterValidate
ajaxFieldonBlur
Onchange
OnClick
OnFocus
onBlur
onChange
onClick
onLoadAll
onRefresh
onValidate
onValidateFailure
onValidateSuccess
onApplicationInit
onExecute
onLoad
onExecute
onLoad
onFooter
onHeader
onScriptInit
onRecord



Totalización de variables

Durante el proceso de agrupamiento y resumen, Scriptcase genera variables totales para cada nivel group .

Las rutinas se definen en el evento " onGroupBy " que determina los niveles de interrupción y está disponible para cada registro. A continuación, se hace referencia a las variables especiales de totales sustituyendo el nombre group por la palabra clave "groupby", como en:

Variables
Description
{count_ger} Records total amount.
{sum_parcel} Will show the total sum for the field "Parcel"
{sum_balance} Will show the total sum for the field "Balance"
{count_groupby} Current Group records total.
{sum_groupby_parcel} Current Group level sum for the field “Parcel”.
{sum_groupby_balance} Current Group level sum for the field “Balance”.

Ex. 1: In an application with a group by state and city that totalizes a balance field, in the group totals, is possible to display the average (avg) instead of the balance as follows.

{sum_groupby_balance} = {sum_groupby_balance} / {count_groupby};


Macro Scope

Aplicación Gráfica Aplicación Grid Aplicación ReportPDF
onFooter
onHeader
onFooter
onGroupBy
onRecord
onFooter
onHeader
onRecord



Totalización de variables (agrupación)

Durante el proceso grupal, Scriptcase genera variables totales para cada nivel de grupo. Las rutinas se definen en el evento " onGroupBy " que determina los niveles del grupo. A continuación, se hace referencia a las variables especiales de los totales sustituyendo el nombre del grupo por la palabra clave " quebra ", como en:

Variable
Description
{count_ger} Records total amount.
{sum_parcel} Field “parcels” total.
{sum_balance} Field “Balance” total.
{count_quebra} Current group level records total.
{sum_quebra_parcel} Current group level field “parcels” total.
{sum_quebra_balance} Current group level field “Balance” total.



Ex. 1: In an application with a group by state and city and that totalizes a balance field, in the group totals, is possible to display the average (avg) instead of the balance as follows.
{sum_quebra_balance} = {sum_quebra_balance} / {count_quebra};


Macro Scope

Aplicación Grid
onFooter
onGroupBy