sc_actionbar_state("nombre_boton", "nombre_estado")

Esta macro le permite cambiar el estado actual del botón de la barra de acción.

Para usar el evento ajax del botón, recomendamos usar esta macro junto con sc_actionbar_clicked_state(); que permite recuperar el estado actual del botón.

Definición de parámetros

Parámetros Valores Descripción
button_name

El nombre del botón debe informarse mediante comillas dobles o simples.

Ejemplo

En negrita, se puede ver el ejemplo de cómo el parámetro button_name debe ser informado:

sc_actionbar_state("ajax_btn""sent");

Este es un parámetro obligatorio.

Debe informar el nombre del botón creado en la barra de acción.

state_name

El nombre del estado debe informarse mediante comillas dobles o simples.

Ejemplo

En negrita, se puede ver el ejemplo de cómo el parámetro state_name debe ser informado:

sc_actionbar_state("ajax_btn""sent");

Este es un parámetro obligatorio.

Debe informar el nombre del siguiente estado que asumirá el botón.

Ejemplos



Ejemplo
: cambiar el estado del botón ajax_btn entre pendiente y enviado en el evento onclick del botón.

if (sc_actionbar_clicked_state() == 'pending') {
sc_actionbar_state('ajax_btn', 'sent'); } else { sc_actionbar_state('ajax_btn', 'pending');
}


Ejemplo
: cambiar el estado del botón ajax_btn entre pendiente y enviado, y almacenar el cambio en la base en el campo email_sent.

if (sc_actionbar_clicked_state() == 'pending') {

	$update = "update orders set email_sent = 'S' WHERE orderid =". {orderid};
sc_exec_sql($update); sc_actionbar_state('ajax_btn', 'sent');
} else { $update = "update orders set email_sent = 'N' WHERE orderid =". {orderid};
sc_exec_sql($update); sc_actionbar_state('ajax_btn', 'pending');
}


Ejemplo
: Visualización del estado del botón ajax_btn según el valor almacenado en el campo email_sent en el evento onRecord de la aplicación Grid.

if ({email_sent} == 'S') {

    sc_actionbar_state('ajax_btn', 'sent');
} else { sc_actionbar_state('ajax_btn', 'pending');
}