Saltar a contenido

PhAST - API

Sumario de las URL utilizadas en la API

Módulo url
additionalInfo package://paystore#endpoint/additionalInfo.wmlsc
CommConst package://phast#comm/const.wmlsc
Datetime package://phast#utils/datetime.wmlsc
Display package://phast#utils/display.wmlsc
Error package://phast#utils/error.wmlsc
EvtManager package://phast#events/manager.wmlsc
Field package://phast#trns/field.wmlsc
Format package://phast#utils/format.wmlsc
GlobalComm package://phast#comm/global_comm.wmlsc
Input package://phast#ui/input.wmlsc
Math package://tef#util/math.wmlsc
Message package://tefui#ui/message.wmlsc
Operations package://phast#utils/operations.wmlsc
PhastMessage package://phast#i18n/messages.wmlsc
Report package://tef#report/report.wmlsc
Rpt package://tef#report/rpt.wmlsc
Service package://phast#applet/service.wmlsc
TefMessage package://tef#i18n/message.wmlsc
Util package://paystore#util/util.wmlsc
Validator package://phast#utils/validator.wmlsc

additionalInfo

package://paystore#endpoint/additionalInfo.wmlsc

Este módulo envía información personalizada por el usuario a PayStore.

execute

execute(addInfoList)

Envíe información de pago adicional en formato Json a PayStore.

Parámetros
  • addInfoList – Lista que contiene el objeto JSON del paquete package://libs#json/json.wmlsc
Devuelve

Si hubo éxito devuelve una lista vacía, si se produce un error, se devolverá una lista con el número del nsu en el que se produjo el error.

Ejemplo:

Ejemplo de mensaje push:

{
  "payments": [{
          "paystoreNsu":  4995627,
          "merchantSpecificId":   "000179",
          "acquirerSpecificId":   "06",
          "totalSaleValue":   "10000",
          "transactionDate":  "03/01/19 17:02:14",
          "type": "split",
          "jsonAdditionalInfo":   [{
                  "idProfessional":   3,
                  "professionalName": "Makson Felix",
                  "nickName": "Makson",
                  "cpfCnpj":  "18181780026",
                  "cellPhone":    "998765402",
                  "email":    "makson.felix@phoebus.com.br",
                  "formCommissioning":    0,
                  "percentValue": "0",
                  "commissionValue":  "2500",
                  "splitValue":   "2500"
              }],
          "terminalSpecificId":   "TESMAK1"
      }]
}
/******************************************************************************/
use url Json        "package://libs#json/json.wmlsc";
use url AddInfo     "package://paystore#endpoint/additionalInfo.wmlsc";
use url Datetime    "package://phast#utils/datetime.wmlsc";
/******************************************************************************/
extern function start()
{
  send();
}
/******************************************************************************/
function prepareInfoData()
{
  var list    = [];
  var listRoot= [];
  var root = Json#create();

  Json#add(root,  "paystoreNsu",           4995627);
  Json#add(root,  "merchantSpecificId",    "000179");
  Json#add(root,  "acquirerSpecificId",    "06");
  Json#add(root,  "totalSaleValue",        "10000");
  var transactionDate = PhSystem.getDate("DD/MM/YYYY");
  Json#add(root,  "transactionDate",       Datet#dateTimeAsStr("DD/MM/YY hh:mm:ss",  transactionDate));
  Json#add(root,  "type",                  "app1");

  var children1 = Json#create();
  Json#add(children1,  "name",   "jose da silva");
  Json#add(children1,  "phone",  "83999999999");
  Json#add(children1,  "email",  "josedasilva@gmail.com");

  var children2 = Json#create();
  Json#add(children1,  "name",   "maria da silva");
  Json#add(children1,  "phone",  "83988888888");
  Json#add(children1,  "email",  "mariadasilva@gmail.com");

  PhList.add(list,  children1);
  PhList.add(list,  children2);

  Json#add(root,  "jsonAdditionalInfo", list);

  PhList.add(listRoot,  root);

  return listRoot;
}
/******************************************************************************/
function send()
{
  var info = prepareInfoData();

  var listNsuWithFail = AddInfo#execute(info);

  if (isvalid(listNsuWithFail))
  {
    if (PhList.count(listNsuWithFail) == 0)
    {
      Dialogs.alert("enviado com sucesso");
    }
    else
    {
      Dialogs.alert("Hubo un error al enviar transacciones a paystore.");
    }
  }
  else
  {
    Dialogs.alert("Hubo un error al comunicarse con paystore.");
  }
}

CommConst

package://phast#comm/const.wmlsc

Constantes

Atributo Valor Descripción
USAGE_PHDM 0 Uso atendido por el servidor
USAGE_INITIALIZATION 1 Uso atendido por el servidor
USAGE_TRANSACTION 2 Uso atendido por el servidor
USAGE_KEEP_ALIVE 3 Uso atendido por el servidor
USAGE_CUSTOM 4 Uso atendido por el servidor
OP_INITIALIZATION 0 Operación de inicialización
OP_INITIALIZATION_RESP 1 Operación de inicialización
OP_INITIALIZATION_CONFIRM 2 Operación de inicialización
SIZE_TYPE_NONE 0 Tipo de tamaño
SIZE_TYPE_BIG_ENDIAN 1 Tipo de tamaño
SIZE_TYPE_LITTLE_ENDIAN 2 Tipo de tamaño
SIZE_TYPE_SHORT_BIG 3 Tipo de tamaño
SIZE_TYPE_SHORT_LITTLE 4 Tipo de tamaño
SIZE_TYPE_CRC_SHORT_BIG 5 Tipo de tamaño
FRAGMENTATION_TYPE_NONE 0 Tipo de fragmentación
FRAGMENTATION_TYPE_PHPACKET 1 Tipo de fragmentación
FRAGMENTATION_TYPE_FASTXM 2 Tipo de fragmentación
SEC_METHOD_PHSEC 0 Tipo de seguridad
SEC_METHOD_NONE 1 Tipo de seguridad
SEC_METHOD_TLS 2 Tipo de seguridad
OP_TRANSACTION 3 Operación de transacción
OP_TRANSACTION_PROG_DYNAMIC 4 Operación de transacción
OP_TRANSACTION_RESP 5 Operación de transacción
OP_TRANSACTION_CONFIRM 6 Operación de transacción
OP_ERROR 7 Operación de transacción
OP_KEEP_ALIVE 8 Operación de transacción
ERROR_NONE 0 Estado de la conexión: No hay errores
ERROR_FROM_SERVER 1 Estado de la conexión: Error recibido del servidor
ERROR_SERVER_RECV Lang.parseInt(Errors##E_COMM_RECV_FAIL_CODE) Estado de la conexión: Error de recepción de datos
ERROR_SERVER_SENDING Lang.parseInt(Errors##E_COMM_SEND_FAIL_CODE) Estado de la conexión: Error en el envío de datos
ERROR_HANDLER_CALLING 5 Estado de la conexión: Error handler
ERROR_INVALID_PARAMS 6 Estado de la conexión: Los parámetros no pueden ejecutar la funcionalidad
ERROR_usarR_ABORT 7 Estado de la conexión: Usuario abortó
ERROR_TIME_OUT 8 Estado de la conexión: Tiempo de espera (timeout)
ERROR_HASH 9 Estado de la conexión: Hash inválido en la verificación del paquete de respuesta

Variables de tiempo de ejecución donde se configurará el ID estático de la transacción o tramo de comunicación

Atributo Valor Descripción
GLOBAL_STATIC_ID "staticId"
GLOBAL_STATIC_LIST "staticIdList"
COMM_ETHERNET 1
COMM_DIAL_TCP 2
COMM_WIRELESS_GPRS 3
COMM_WIRELESS_WIFI 9
COMM_DIAL_SDLC 11

Variáveis que retoram o perfil de uso da conexão.

Atributo Valor Descripción
PERFIL_LOCAL 1
PERFIL_REMOTO 2
COMM_PROTOCOLS_STRUCT

CommConst#COMM_PROTOCOLS_STRUCT()

Devuelve la estructura del protocolo de comunicación

Devuelve
string com estrutura json
IS_OP_INITIALIZATION

CommConst#IS_OP_INITIALIZATION(type)

Comprobación del tipo de operación

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION

CommConst#IS_OP_TRANSACTION(type)

Comprobación del tipo de operación

Parámetros
type integer
Devuelve
boolean
IS_OP_INITIALIZATION_CONFIRM

CommConst#IS_OP_INITIALIZATION_CONFIRM(type)

Comprobación del tipo de operación

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION_CONFIRM

CommConst#IS_OP_TRANSACTION_CONFIRM(type)

Comprobación del tipo de operación

Parámetros
type integer
Devuelve
boolean
IS_OP_CONFIRMATION

CommConst#IS_OP_CONFIRMATION(type)

Comprobación del tipo de operación

Parámetros
type integer
Devuelve
boolean
IS_OP_INITIALIZATION_RESP

CommConst#IS_OP_INITIALIZATION_RESP(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION_PROG_DYNAMIC

CommConst#IS_OP_TRANSACTION_PROG_DYNAMIC(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION_RESP

CommConst#IS_OP_TRANSACTION_RESP(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_ERROR

CommConst#IS_OP_ERROR(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_CONFIRMATION

CommConst#IS_OP_CONFIRMATION(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_INITIALIZATION_RESP

CommConst#IS_OP_INITIALIZATION_RESP(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION_PROG_DYNAMIC

CommConst#IS_OP_TRANSACTION_PROG_DYNAMIC(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_TRANSACTION_RESP

CommConst#IS_OP_TRANSACTION_RESP(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_OP_ERROR

CommConst#IS_OP_ERROR(type)

Comprobación de los tipos de respuesta

Parámetros
type integer
Devuelve
boolean
IS_ERROR_NONE

CommConst#IS_ERROR_NONE(type)

Comprobación de errores

Parámetros
type integer
Devuelve
boolean
IS_ERROR_FROM_SERVER

CommConst#IS_ERROR_FROM_SERVER(type)

Comprobación de errores

Parámetros
type integer
Devuelve
boolean
IS_ERROR_SERVER_RECV

CommConst#IS_ERROR_SERVER_RECV(type)

Comprobación de errores

Parámetros
type integer
Devuelve
boolean
IS_ERROR_SERVER_SENDING

CommConst#IS_ERROR_SERVER_SENDING(type)

Comprobación de errores

Parámetros
type integer
Devuelve
boolean

IS_ERROR_HANDLER_CALLING

CommConst#IS_ERROR_HANDLER_CALLING(type)

Comprobación de errores

Parámetros
type integer
Devuelve
boolean

getString

CommConst#getString(code)

Devuelve un mensaje basado en el código de error

Parámetros
code integer
Devuelve
string

getErrorStringCode

CommConst#getString(error)

Codificar el código de error de PhComm a PhAST

Parámetros
error integer
Devuelve
string

getConfigFromUsage

CommConst#getConfigFromUsage(type, usage)

Devuelve el tipo de configuración.

Parámetros
Nombre Tipo Descripción
type integer Tipo de conección:
CommConst#COMM_WIRELESS_GPRS,
CommConst#COMM_WIRELESS_WIFI
usage integer Tipo de uso:
CommConst#USAGE_PHDM(),
CommConst#USAGE_INITIALIZATION(),
CommConst#USAGE_TRANSACTION(),
CommConst#USAGE_KEEP_ALIVE()
Devolver
string
Ejemplo
 use url CommConst "package://phast#comm/const.wmlsc"

 var config = CommConst#getConfigFromUsage(CommConst#COMM_WIRELESS_GPRS(), CommConst#USAGE_PHDM());
 Dialogs.alert(config);
Salida
 wifi_phdm

Datetime

package://phast#utils/datetime.wmlsc

Módulo responsable de la manipulación de la fecha y la hora.

getDate

Datetime#getDate()

Devuelve la fecha actual del sistema

Parámetros
**Ninguno**
Devuelve
entero representando la fecha actual

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var date = DateT#getDate();
Message#showMessage("Fecha actual (entero): " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha actual (entero): 19142
````

getTime

Datetime#getTime()

Devuelve la hora actual del sistema

Parámetros
**Ninguno**
Devuelve
inteiro representando a hora atual

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var time = DateT#getTime();
Message#showMessage("Hora actual (entero): " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Hora actual (entero): 34425
````

getTimestamp

Datetime#getTimestamp()

Devuelve un entero que representa el timestamp actual

Parámetros
**Ninguno**
Devuelve
entero con el timestamp

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timeStamp = DateT#getTimestamp();
Message#showMessage("timestamp actual (entero): " + timeStamp, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

timestamp actual (entero): 1254524565
````

getDateTime

Datetime#getDateTime()

Devuelve la fecha y la hora actuales

Parámetros
**Ninguno**
Devuelve

PhStruct con los campos de fecha y hora actuales

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = DateT#getDateTime();
var date = PhStruct.get(dateTime, "date");
var time = PhStruct.get(dateTime, "time");
 Message#showMessage("Fecha actual: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
 Message#showMessage("Hora actual: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha actual: 06/06/2017
Hora actual: 16:57:38

dateTimeToSeconds

Datetime#dateTimeToSeconds(dateTime)

Devuelve la fecha y la hora convertida en segundos

Parámetros
+ **DateTime** - fecha y hora que se convertirán en segundos
Devuelve

Número entero que representa el tiempo recibido, en segundos.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timeToSeconds = DateT#dateTimeToSeconds(DateT#getDateTime());
Message#showMessage("datetime en segundos:" + timeToSeconds, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

datetime en segundos: 1496768608

secondsToDateTime

Datetime#secondsToDateTime(seconds)

Devuelve la fecha y la hora convertida en segundos.

Parámetros
+ **seconds** - número entero en segundos que se convertirá en fecha y hora.
Devuelve
PhStruct con campos de fecha y hora que contienen la fecha y la hora convertidas.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var secondsToDateTime = DateT#secondsToDateTime(1496768608);
var date = PhStruct.get(secondsToDateTime, "date");
var time = PhStruct.get(secondsToDateTime, "time");
Message#showMessage("Fecha: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("Hora: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha: 06/06/2017
Hora: 17:03:28

strAsTime

Datetime#strAsTime(mask, str)

Devuelve la hora de una string suministrada según la máscara

Parámetros
+ **mask** - máscara en patrón hh - hora, mm - minuto y ss - segundos

+ **str** - string que contiene la hora a convertir según el patrón de la máscara.
Devuelve

Número entero que representa el time.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var time = DateT#strAsTime("hh:mm:ss", "17:24:30");
Message#showMessage("time: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

time: 35599

strAsDate

Datetime#strAsDate(mask, str)

Devuelve la fecha de una string suministrada según la máscara

Parámetros
+ **mask** - máscara en patrón DD - día, MM - Mes, YY o YYYY Año

+ **str** - string que contiene la fecha a convertir según el patrón de la máscara.
Devuelve

Número entero que representa el date.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var date = DateT#strAsDate("DD/MM/YYYY", "06/06/2017");
Message#showMessage("date: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

date: 19142

strAsTimestamp

Datetime#strAsTimestamp(mask, str)

Devuelve el timestamp de una string suministrada según la máscara

Parámetros
+ **mask** - máscara en patrón DD - día, MM - Mes, YY o YYYY - año, hh - hora, mm - minuto y ss - segundos

+ **str** - string que contiene la fecha y hora a convertir según el patrón de la máscara.
Devuelve
Número entero que representa el timestamp

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timeStamp = DateT#strAsTimestamp("DD/MM/YYYY hh:mm:ss", "06/06/2017 17:38:30");
Message#showMessage("timeStamp: " + timeStamp, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

timeStamp: 1254526159

dateAsStr

Datetime#dateAsStr(mask, date)

Devuelve la fecha convertida en string a partir de un date entero, según la máscara.

Parámetros
+ **mask** - máscara en patrón DD - día, MM - Mes, YY o YYYY - año.

+ **date** - número entero que representa la fecha.
Devuelve
string con la fecha en el formato de la máscara introducida.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var date = DateT#dateAsStr("DD/MM/YYYY", 19142);
Message#showMessage("date: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

date: 06/06/2017

timeAsStr

Datetime#timeAsStr(mask, time)

Devuelve la hora convertida en string a partir de un time entero, según la máscara.

Parámetros
+ **mask** - máscara en patrón hh - hora, mm - minuto y ss - segundos

+ **time** - entero que representa el time
Devuelve
string con la hora en el formato de la máscara introducida.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var time = DateTime#timeAsStr("hh:mm:ss", 35599);
Message#showMessage("time: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

time: 17:24:30

timestampAsStr

Datetime#timestampAsStr(mask, timestamp)

Devuelve el timestamp convertido en string a partir de un time entero, según la máscara.

Parámetros
+ **mask** - máscara en patrón DD - dia, MM - Mes, YY o YYYY - Año, hh - hora, mm - minuto y ss - segundos

+ **timestamp** - entero que representa el timestamp.
Devuelve
string con el timestamp en el formato de la máscara introducida.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timeStamp = DateT#timestampAsStr("DD/MM/YYYY hh:mm:ss", 1254526159);
Message#showMessage("timeStamp: " + timeStamp, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

timeStamp: 06/06/2017 17:38:30

dateTimeAsStr

Datetime#dateTimeAsStr(mask, datetime)

Devuelve el datetime convertido en string conforme la máscara.

Parámetros
+ **mask** - máscara en patrón DD - dia, MM - Mes, YY o YYYY - Año, hh - hora, mm - minuto y ss - segundos

+ **datetime** - PhStruct con campos date y time.
Devuelve
string con el datetime en el formato de la máscara introducida.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = PhStruct.create("{date:date;time:time}");
PhStruct.set(dateTime, "date", 19142);
PhStruct.set(dateTime, "time", 35599);
var dateTimeAsStr = DateT#dateTimeAsStr("DD/MM/YYYY hh:mm:ss", dateTime);
Message#showMessage("dateTimeAsStr: " + dateTimeAsStr, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

dateTimeAsStr: 06/06/2017 17:24:30

dateTimeAsTimestamp

Datetime#dateTimeAsTimestamp(datetime)

Devuelve el datetime convertido en timestamp.

Parámetros
+ **datetime** - PhStruct con campos date y time.
Devuelve
Número entero con el timestamp convertido o **invalid** en caso de error.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = PhStruct.create("{date:date;time:time}");
PhStruct.set(dateTime, "date", 19142);
PhStruct.set(dateTime, "time", 35599);
var dateTimeAsTimestamp = DateT#dateTimeAsTimestamp(dateTime);
Message#showMessage("dateTimeAsTimestamp: " + dateTimeAsTimestamp, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

dateTimeAsTimestamp: 1254525711

strAsDateTime

Datetime#strAsDateTime(mask, str)

Devuelve el datetime convertido en string según la máscara.

Parámetros
+ **mask** - máscara en patrón DD - dia, MM - Mes, YY o YYYY - Año, hh - hora, mm - minuto y ss - segundos

+ **str** - string con el datetime en el formato de la máscara introducida.
Devuelve
PhStruct con campos date y time.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var strAsDateTime = DateT#strAsDateTime("DD/MM/YYYY hh:mm:ss", "07/06/2017 08:44:27");
var date = PhStruct.get(strAsDateTime, "date");
var time = PhStruct.get(strAsDateTime, "time");
Message#showMessage("date: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("time: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

date: 07/06/2017
time: 08:44:27

timestampAsDateTime

Datetime#timestampAsDateTime(timestamp)

Devuelve el timestamp convertido a datetime.

Parámetros
+ **timestamp** - número entero que representa el timestamp
Devuelve
PhStruct con campos date y time

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timestampAsDateTime = DateT#timestampAsDateTime(1254525711);
var date = PhStruct.get(timestampAsDateTime, "date");
var time = PhStruct.get(timestampAsDateTime, "time");
Message#showMessage("date: " + date, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("time: " + time, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

date: 06/06/2017
time: 17:24:30

dateTimeSetDate

Datetime#dateTimeSetDate(datetime, date)

Establece la fecha en un datetime;

Parámetros
+ **datetime** - PhStruct con campos date y time.

+ **date** - número entero con la fecha que se va a establecer
Devuelve
**true** si el ajuste de la fecha fue exitoso o **false** en caso de fracaso.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = DateT#getDateTime();
if (DateT#dateTimeSetDate(dateTime, 19142))
{
 Message#showMessage("date: " + PhStruct.get(dateTime, "date"), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("Error al establecer la fecha", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

date: 06/06/2017

dateTimeSetTime

Datetime#dateTimeSetTime(datetime, time)

Establece la hora en un datetime;

Parámetros
+ **datetime** - PhStruct con campos date y time.

+ **time** - número entero con la hora que se va a establecer
Devuelve
**true** si el ajuste de la hora fue exitoso o **false** en caso de fracaso.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = DateT#getDateTime();
if (DateT#dateTimeSetTime(dateTime, 35599))
{
 Message#showMessage("time: " + PhStruct.get(dateTime, "time"), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("Error al establecer la hora", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

hora: 17:24:30

validateDateTime

Datetime#validateDateTime(mask, str)

Verifica si el timestamp introducido es válido.

Parámetros
+ **mask** - máscara en patrón DD - dia, MM - Mes, YY o YYYY - Año, hh - hora, mm - minuto y ss - segundos

+ **str** - timestamp en el patrón de la máscara.
Devuelve
**true** si la string introducida es un timestamp válido

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

if (DateT#validateDateTime("DD/MM/YYYY hh:mm:ss", "07/06/2017 10:58:12"))
{
 Message#showMessage("Fecha y hora válidas", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("Fecha y hora no válidas", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

Fecha y hora válidas

setDateTime

Datetime#setDateTime(datetime)

Establece la fecha y la hora del sistema;

Parámetros
+ **datetime** - PhStruct con campos date y time.
Devuelve
**true**  si el ajuste de la hora fue exitoso o **false** en caso de fracaso.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

DateT#setDateTime(DateT#strAsDateTime("DD/MM/YYYY hh:mm:ss", "08/06/2017 10:00:00"));
Message#showMessage("¡Fecha y hora|configuradas con|éxito!", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

¡Fecha y hora
configuradas con
éxito!

checkInterval

Datetime#checkInterval(initial, current, final)

Verifica si una hora determinada está dentro del o intervalo introducido.

Parámetros
+ **initial** - inicio del intervalo.

+ **current** - hora que desea comprobar.

+ **final** - fin del intervalo.
Devuelve
**true** si current está entre initial y final, **false** de lo contrario.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var timeIni     = DateT#strAsTime("hh:mm:ss", "11:00:00");
var timeCurrent = DateT#strAsTime("hh:mm:ss", "11:45:00");
var timeFinal   = DateT#strAsTime("hh:mm:ss", "12:00:00");
if (DateT#checkInterval(timeIni, timeCurrent, timeFinal))
{
 Message#showMessage("la hora está en el intervalo", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("la hora no está en el intervalo", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

}

Salida:

la hora está en el intervalo

validateDate

Datetime#validateDate(date)

Verifica si la fecha introducida es válida.

Parámetros
+ **date** - entero con la fecha a verificar.
Devuelve
**true** si la fecha introducida es una fecha válida.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

if (DateT#validateDate(DateT#strAsDate("DD/MM/YYYY", "07/06/2017")))
{
 Message#showMessage("La fecha es válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("La fecha no es válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

}

Salida:

La fecha es válida

decDay

Datetime#decDay(date, qDay)

Disminuye una fecha

Parámetros
+ **date** - Entero que contiene la fecha.

+ **qDay** - Número de días para disminuir
Devuelve
entero que contiene la fecha decrementada de qDay(s).

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

Message#showMessage("Fecha actual: " + DateT#dateAsStr("DD/MM/YYYY", DateT#getDate()), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("Fecha disminuida 25 días: " + DateT#dateAsStr("DD/MM/YYYY", DateT#decDay(DateT#getDate(), 25)), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha actual: 07/06/2017
Fecha disminuida 25 días: 13/05/2017

incDay

Datetime#incDay(date, qDay)

Incrementar una fecha

Parámetros
+ **date** - Entero que contiene la fecha.

+ **qDay** - Número de días para aumentar
Devuelve
entero que contiene la fecha incrementada de qDay(s).

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

Message#showMessage("Fecha actual: " + DateT#dateAsStr("DD/MM/YYYY", DateT#getDate()), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("Fecha incrementada 25 días: " + DateT#dateAsStr("DD/MM/YYYY", DateT#incDay(DateT#getDate(), 25)), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha actual: 07/06/2017
Fecha incrementada 25 días: 02/07/2017

compare

Datetime#compare(number, number2)

Compara dos times enteros

Parámetros
+ **number** - entero conteniendo el time

+ **number2** - entero conteniendo el time para comparar.
Devuelve
+ 0  si los tiempos son los mismos
  • -1 si number < number2
  • 1 si number > number2

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var hora1 = DateT#strAsTime("hh:mm:ss", "15:04:20");
var hora2 = DateT#strAsTime("hh:mm:ss", "17:52:20");
var hora3 = DateT#strAsTime("hh:mm:ss", "15:04:20");
Message#showMessage("hora1 y hora2: " + DateT#compare(hora1, hora2), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("hora2 y hora1: " + DateT#compare(hora2, hora1), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("hora1 y hora3: " + DateT#compare(hora1, hora3), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

hora1 y hora2: -1
hora2 y hora1: 1
hora1 y hora3: 0

compareDateTime

Datetime#compareDateTime(dateTime, dateTimeComp, flag)

Comparar dos valores de fecha y hora

Parámetros
+ **dateTime** - PhStruct que contiene los campos date y time

+ **dateTimeComp** - PhStruct que contiene los campos de date y time, para comparar

+ **flag** - Opción de comparación. **0** comparar las dos datetimes. **1** compara solo la fecha. **2** compara solo la hora.
Devuelve
  • 0 se los datetimes son los mismos
  • -1 si dateTime < dateTimeComp
  • 1 si dateTime > dateTimeComp

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime1 = DateT#strAsDateTime("DD/MM/YYYY hh:mm:ss", "07/06/2017 15:24:37");
var dateTime2 = DateT#strAsDateTime("DD/MM/YYYY hh:mm:ss", "07/06/2017 17:10:00");
var dateTime3 = DateT#strAsDateTime("DD/MM/YYYY hh:mm:ss", "07/06/2017 15:24:37");
Message#showMessage("dateTime1 y dateTime2: " + DateT#compareDateTime(dateTime1, dateTime2, 0), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("dateTime2 y dateTime1: " + DateT#compareDateTime(dateTime2, dateTime1, 0), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Message#showMessage("dateTime1 y dateTime3: " + DateT#compareDateTime(dateTime1, dateTime3, 0), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

dateTime1 y dateTime2: -1
dateTime2 y dateTime1: 1
dateTime1 y dateTime3: 0

dateTimeGetDate

Datetime#dateTimeGetDate(datetime)

Extrae la fecha de un datetime determinado.

Parámetros
+ **datetime** - PhStruct con los campos date y time.
Devuelve
entero que contiene la fecha extraída.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = DateT#strAsDateTime("DD/MM/YYYY", "15:32:17");
Message#showMessage("Fecha: " + DateT#dateTimeGetDate(dateTime), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Fecha: 19143

dateTimeGetTime

Datetime#dateTimeGetTime(datetime)

Extrae la hora de un datetime determinado.

Parámetros
+ **datetime** - PhStruct con los campos date y time.
Devuelve
entero que contiene la hora extraída.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var dateTime = DateT#strAsDateTime("DD/MM/YYYY", "15:32:17");
Message#showMessage("Hora: " + DateT#dateTimeGetTime(dateTime), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Hora: 31752

createDateTime

Datetime#createDateTime(date, time)

Crea un tipo datetime.

Parámetros
+ **date** - entero que contiene la fecha

+ **time** - entero que contiene la hora
Devuelve
PhStruct con los campos date y time.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var data = 19143;
var hora = 31752;
var dateTime = DateT#createDateTime(data, hora);
Message#showMessage("datetime: " + DateT#dateTimeAsStr("DD/MM/YYYY hh:mm:ss", dateTime), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

datetime: 07/06/2017 15:32:16

dateToJulianDays

Datetime.dateToJulianDays(date)

Convierte una fecha en días julianos

Parámetros
+ **date** - entero que contiene la fecha.
Devuelve
entero que contiene el número de días julianos respectivos.

Ejemplo:

use url DateTime   "package://phast#utils/datetime.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var data = 19143;
Message#showMessage("juliandays: " + DateT#dateToJulianDays(data), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

juliandays: 2457912

Display

package://phast#utils/display.wmlsc

Este módulo gestiona los mensajes que se muestran al operador. La aplicación también podrá personalizar sus propios mensajes a través de esta API.

Sumario

Función Descripción
showMessage Conectar el dispositivo creado
showMessageExt Validar si el dispositivo está conectado
showMemo Cree una transmisión genérica para el dispositivo
showMemoExt Habilita el procesamiento de conexiones TLS sin bloqueo.
showMemoExtError Desconectar dispositivo
showMemoInfo Recuperar el último error ocurrido
showMessageAndTitle Recuperar información / configuración del dispositivo
confirmDialog Recuperar el último error ocurrido en la API del dispositivo terminal

Constantes

Constante Valor Descripción
Display#ALIGN_NONE 0 Sin alineación.
Display#ALIGN_CENTER 1 Alineado al centro.
Display#ALIGN_LEFT 2 Alineado a la izquierda.
Display#ALIGN_RIGHT 3 Alineado a la derecha.
Display#ALIGN_JUSTIFY 4 Alineación justificada.

showMessage

Display#showMessage(title, msg, block)

Muestra un mensaje con varias líneas en la pantalla.

Parámetros
**title** - Título del mensaje.

**msg** - Cuerpo del mensaje.

**block** - booleano. Si es true, hace que funcione el bloqueo. NOTA: este parámetro está obsoleto en terminales con suporte gráfico. En estos casos, el mensaje siempre se bloquea.
# Devuelve
Mensaje mostrado en la pantalla.

Ejemplo:

use url Display "package://phast#utils/display.wmlsc";

Display#showMessage("showMessage", "Mensaje 1|Mensaje 2|Mensaje 3|Mensaje 4|Mensaje 5|", true);

showMessageExt

Display#showMessageExt(title, message, delay, beep, align)

Muestra un mensaje con varias líneas y con una opción de alineación. Esta función no es bloqueante.

Parámetros
Nombre Tipo Descripción
title String Título del mensaje.
message String Cuerpo del mensaje
delay Number Tiempo en milisegundos
beep Number Tiempo de pitido en milisegundos, (0 0 indica que no hay pitido)
align Number Alineación del texto en el cuerpo del mensaje.. Ver sesión de "Alineación"
Devuelve
Mensaje mostrado en la pantalla.
Ejemplo
use url Display "package://phast#utils/display.wmlsc";

Display#showMessageExt("showMessageExt", "Mensaje 1|Mensaje 2|Mensaje 3|Mensaje 4|Mensaje 5|", 0, 0, Display#ALIGN_CENTER() );

showMemo

Display#showMemo(title, memo, block, clearDisp)

Muestra una nota en la pantalla. las teclas arriba y abajo desplazarán la pantalla, ESC o ENTER finaliza la presentación.

Parámetros
**title** - Título del mensaje.

**memo** - Cuerpo del mensaje.

**block** - booleano. Si es true, hace que funcione el bloqueo. NOTA: este parámetro está obsoleto en terminales con suporte gráfico. En estos casos, el mensaje siempre se bloquea.

**clearDisp** - booleano. Si es **true** la pantalla se borrará antes de la presentación del Memo. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla.
Devuelve
Mensaje mostrado en la pantalla.

Ejemplo:

use url Display "package://phast#utils/display.wmlsc";

Display#showMemo("showMessage", "Mensaje 1|Mensaje 2|Mensaje 3|Mensaje 4|Mensaje 5|", true, false);

showMemoExt

Display#showMemoExt(title, memo, timeOut, beep, clearDisp, hotkey, showExit)

Muestra un Memo en la pantalla. las teclas arriba y abajo desplazarán la pantalla, ESC o ENTER finaliza la presentación.

Parámetros
**title** - Título del mensaje.

**memo** - Cuerpo del mensaje.

**timeOut** - Muestra el tiempo en milisegundos, (0 indica timeOut 0xFFFF)

**beep** - tiempo de beep en milisegundos, (0 indica que no hay beep)

**clearDisp** - booleano. Si es **true** la pantalla se borrará antes de la presentación del Memo. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla.

**hotkey** - Número entero representado por cada tecla de terminal física que se utiliza como atajo para imprimir el contenido del Memo

**showExit** - booleano que indica si se muestra o no el botón de salida cuando se encuentra en terminales con soporte gráfico.
Devuelve
Ninguno

Ejemplo:

use url Display "package://phast#utils/display.wmlsc";

Display#showMemoExt("showMemoExt", "Mensaje 1|Mensaje 2|Mensaje 3|Mensaje 4|Mensaje 5|", 3000, 1000, false, invalid, false);

showMemoExtError

Display#showMemoExtError(title, memo, timeOut, beep, clearDisp, hotkey)

Ver showMemoExt

showMemoInfo

Display#showMemoInfo(title, memo, timeOut, beep, clearDisp, hotkey, showExit, labelExit)

Muestra una nota en la pantalla. las teclas arriba y abajo desplazarán la pantalla, ESC o ENTER finaliza la presentación.

Parámetros
**title** - Título del mensaje.

**memo** - Cuerpo del mensaje.

**timeOut** - Muestra el tiempo en milisegundos, (0 indica timeOut 0xFFFF)

**beep** - tiempo de bip en milisegundos, (0 indica que no hay bip)

**clearDisp** - booleano. Si es **true** la pantalla se borrará antes de la presentación del Memo. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla.

**hotkey** - Número entero representado por cada tecla de terminal física que se utiliza como atajo para imprimir el contenido del Memo

**showExit** - booleano que indica si se muestra o no el botón de salida cuando se encuentra en terminales con soporte gráfico.

**labelExit** - Texto que se mostrará en el botón de salida del Memo.
Devuelve
Ninguno

Ejemplo:

use url Display "package://phast#utils/display.wmlsc";

Display#showMemoInfo("showMemoInfo", "Mensaje 1|Mensaje 2|Mensaje 3|Mensaje 4|Mensaje 5|", 3000, 1000, false, invalid, false);

showMessageAndTitle

Display#showMessageAndTitle(title, message)

Muestra un mensaje con un título opcional. NOTA: Esta función no es bloqueante.

Parámetros
**title** - Título del mensaje o **invalid**.

**message** - Cuerpo del mensaje.
Devuelve
**true** en caso de éxito o **false** en caso de error.

Ejemplo:

use url Display "package://phast#utils/display.wmlsc";

while(true)
 Display#showMessageAndTitle(invalid, "Impresión...");

confirmDialog

Display#confirmDialog(title, msg, timeOut)

Muestra un dialog con las opciones [sí] y [no] para la captura de confirmación.

Parámetros
**title** - Título del dialog.

**msg** - Mensaje que se mostrará en la pregunta.

**timeOut** - timeout en milisegundos.
Devuelve
**true** si el operador eligió la opción **[sí]** y **invalid** si se elige la opción **[no]** o el dialog sale con timeout.

Ejemplo:

var result = Display#confirmDialog("Confirmación", "¿Confirmar impresión?", 5000);
  if (result)
  {
    Message#showMessage("Elegí la opción [sí]", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
  }
  else
  {
    Message#showMessage("Elegí la opción [no]", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
  }

Error

package://phast#utils/error.wmlsc

Los errores estándar que ocurrieron durante la ejecución de la aplicación se muestran en pantalla con un beep durante 2 segundos, mostrando el código de error y su descripción. La aplicación puede mostrar sus propios errores con sus respectivos códigos. (ver ##showErrorExt()).

Sumario

Función Descripción
showErrorExt Muestra un error codificado en la pantalla durante timeout milisegundos

showErrorExt

Error#showErrorExt(code, error, attrs)

Muestra un error codificado en la pantalla durante timeout milisegundos

Parámetros
Nombre Tipo Descripción
code String Código de error que se mostrará
error String string con el error para mostrar
attrs Array lista de atributos.

lista de atributos

Nombre Tipo Descripción
timeout Number Tiempo en milisegundos para mostrar el error
salveError Boolean Actualiza código y mensaje del último error mostrado
Devuelve
Ninguno
Ejemplo
use url PhASTError "package://phast#utils/error.wmlsc";

PhASTError#showErrorExt("APP020", "PRUEBA DE ERRORES", [5000, true]);
Salida
APP020
PRUEBA DE ERRORES

EvtManager

package://phast#events/manager.wmlsc

Módulo de registro de eventos. Los eventos se pueden utilizar para llamar a una función en un momento determinado.

Sumario

Función Descripción
registerLocalEvent Registra un nuevo evento en la tabla de eventos.
removeEvent Elimina un evento de la tabla de eventos.

Funciones

RegisterLocalEvent

EvtManager#registerLocalEvent(id, time, cron, idle, func, reattempts, reattemptMsg, recoveryDelay, limit, aleatory)

Registra un nuevo evento en la tabla de eventos.

Parámetros
  • id - Identificador de evento. Importante: Los ID entre 0 y 100 están reservados para uso interno, por lo que solo se permiten valores superiores a 100.
  • time - Datetime indicando la hora de inicio de la ejecución del evento.
  • cron - String que contiene la expresión cron (Ver http://en.wikipedia.org/wiki/Cron). Si es invalid o string vacía (""), el evento se ejecutará solo una vez a la hora definida en time.
  • idle - Tiempo mínimo de inactividad para la ejecución del evento (en ms)
  • func - String indicando la función que será realizada por el evento. La string debe seguir el formato "package://script#function" (Ex: "package://events/events.wmlsc#eventHello").
  • reattempts - Número de reintentos para ejecutar el evento en caso de falla
  • reattemptMsg - String que contiene el mensaje que se mostrará cuando se realice un intento de ejecución. Se usa solo cuando reattempts es mayor que cero.
  • recoveryDelay - Tiempo (en minutos) de espera entre cada intento de recuperar el evento. Se usa solo cuando reattempts es mayor que cero.
  • limit - Indica el límite de ejecución del evento. Si es 0, no habrá límite de ejecución.
  • aleatory - Parámetro no utilizado en eventos locales. Pasa siempre 0.
Devuelve

booelan indicando si el evento fue registrado.

RemoveEvent

EvtManager#removeEvent(id) Elimina un evento de la tabla de eventos.

Parámetros
**id** - Identificador de evento que se eliminará.
Devuelve
**booelan** indicando si el evento fue eliminado.

Ejemplo:

function test()
{
  // Registra un evento que llama a la función eventHello cada 30 segundos, con al menos 2000 ms inactivo
  var result = EvtManager#registerLocalEvent(101, Datet#getDateTime(),
               "0/30 * * * * ?", 2000, "package://test/eventTest.wmlsc##eventHello", 0, "", 0, 0, 0);

  if (result)
  {
    Message#showMessage("Evento registrado!", 1500, Message#BEEP_MESSAGE());
  }
}

extern function eventHello()
{
  Message#showMessage("Hello World!", 1500, Message#BEEP_MESSAGE());

  // Eliminar evento con id 10
  if (EvtManager#removeEvent(10))
  {
    Message#showMessage("Evento eliminado!", 1500, Message#BEEP_MESSAGE());
  }
}

Salida:

Evento registrado!
---

Hello World!
---

Evento eliminado!
---

Field

package://phast#trns/field.wmlsc
  • Descripción de las constantes del required field.

Required field

Constante Descripción
Field#E_READ_ONLY() Field entrada de solo lectura
Field#E_OPTIONAL() Field entrada opcional
Field#E_REQUIRED() Field entrada requerida.
Field#HIDDEN() Field oculto

Format

package://phast#utils/format.wmlsc

Módulo para formatear y estandarizar datos.

addToContext

Format#addToContext(script)

Agrega el script pasado por parámetro para que las funciones se ejecuten con prioridad al script base. Las funciones que se pueden sobrescribir son:

  • formatMsg
Parámetros
**script** - URL completa de la ruta del script.
Devuelve
**true** éxito o **falso** en caso de fracaso.

Ejemplo:

extern function init(applet)
{
  Format#addToContext(
    "package://mypacka#utils/myformat.wmlsc");
}

RemoveFromContext

Format#removeFromContext(script)

Compruebe si el script está en contexto y elimínelo.

Parámetros
**script** - URL completa de la ruta del script.
Devuelve
**true** éxito o **falso** en caso de fracaso.

Ejemplo:

extern function term()
{
  Format#removeFromContext(
    "package://mypacka#utils/myformat.wmlsc");
}

formatMsg

Format#formatMsg(string)

Llama a la función de contexto para manejar la string, o si no, normaliza y capitaliza la string si no es POS con soporte gráfico. De lo contrario, se devuelve la string en sí.

Parámetros
**string** - String a formatear.
Devuelve
Depende de la función de contexto. De lo contrario, y el POS solo admite el modo de texto, devuelve la string convertida a mayúsculas y normalizada. En caso de error, devuelve invalid.

Ejemplo:

var result = Format#formatMsg("Título");

Salida:

result: "TITULO"

alignLeft

Format#alignLeft(string, width)

Alinea la string a la izquierda. Si el ancho es mayor que la longitud de la string, se completa con espacios a la derecha.

Parámetros
**string** - String para usar.

**width** - Número máximo de columnas para alineación.
Devuelve
String alineada a la izquierda dentro del ancho. En caso de error o string no válida, devuelve invalid.

Ejemplo:

var string = "LEFT";
string = Format#alignLeft(string, 19);

Salida:

string: "LEFT               "

alignRight

Format#alignRight(string, width)

Alinea la string a la derecha. Si el ancho es mayor que la longitud de la string, se completa con espacios a la izquierda.

Parámetros
**string** - String para usar.

**width** - Número máximo de columnas para alineación.
Devuelve
String alineada a la derecha dentro del ancho. En caso de error o string no válida, devuelve invalid.

Ejemplo:

var string = "RIGHT";
string = Format#alignRight(string, 19);

Salida:

string: "              RIGHT"

alignCenter

Format#alignCenter(string, width)

Alinear la cuerda al centro del ancho. Si el ancho es mayor que la longitud de la string, se completa con espacios a la izquierda y derecha.

Parámetros
**string** - String para usar.

**width** - Número máximo de columnas para alineación.
Devuelve
String alineada a la centro dentro del ancho. En caso de error o string no válida, devuelve invalid.

Ejemplo:

var string = "CENTER";
string = Format#alignCenter(string, 19);

Salida:

string: "      CENTER       "

alignJustify

Format#alignJustify(string, width)

Distribuya la string por ancho usando el espacio como elemento separador, si el ancho es mayor que la longitud de la string.

Parámetros
**string** - String para usar.

**width** - Número máximo de columnas para alineación.
Devuelve
String justificada dentro del ancho. En caso de error o string no válida, devuelve invalid.

Ejemplo:

var string = "JUSTTIFY THIS";
string = Format#alignJustify(string, 19);

Salida:

string: "JUSTTIFY       THIS"

justifyPriorityRight

Format#justifyPriorityRight(left, right, width)

Alinee la string left a la izquierda y la string right a la derecha dentro del ancho. Si el ancho es menor que la suma de las longitudes de la string, right se superpone a la left hasta la longitud de la string right.

Parámetros
**left** - String que estará alineado a la izquierda.

**right** - String que estará alineado a la derecha.

**width** - Número máximo de columnas para alineación.
Devuelve
String que contiene las strings left y right alineadas a derecha e izquierda, respectivamente. En caso de error devuelve invalid.

Ejemplo:

var result_1 = "";
var result_2 = "";
var result_3 = "";
result_1 = Format#alignBorders("LEFT", "RIGHT", 19);
result_2 = Format#alignBorders("LEFT", "RIGHT", 7);
result_3 = Format#alignBorders("LEFT", "RIGHT", 2);

Salida:

result_1: "LEFT          RIGHT"
result_2: "LERIGHT"
result_3: "RIGHT"

createMemoFromStr

Format#createMemoFromStr(string, align)

Transforma la string en un PhType.MEMO. El carácter '|' implicará una nueva línea. Utilice PhDisplay.maxColumns como ancho para las alineaciones.

Parámetros
**string** - String que se utilizará para la creación de MEMO.

**align** - Alineación de líneas del Memo. Valores posibles:
  • 0 - izquierda
  • 1 - centro
  • 2 - derecha
  • 3 - justificado
Devuelve
Un PhType.MEMO o invalid en caso de error.

Ejemplo:

  var memo  = Format#createMemoFromStr(
                 "Memo|con líneas | centrado", 1);

  for (var i = 0; i < PhType.count(memo); i++)
  {
    PhDisplay.putString(i, 0,
      PhDisplay.NORMAL,
      PhType.getValue(memo, i));
  }

Salida:

          Memo
       con líneas
        centrado

addLineToMemo

Format#addLineToMemo(memo, line, align, width)

Agrega una string como nueva línea al memo PhType.MEMO.

Parámetros
**memo** - PhType.MEMO.

**line** - String para nueva línea.

**align** - Alineación de líneas del Memo. Valores posibles:

- 0 - izquierda
- 1 - centro
- 2 - derecha
- 3 - justificado

**width** - Número máximo de columnas para alineación.
Devuelve
PhType.MEMO memo agregó una nueva línea compuesta por la string alineada por alineación y ancho.

Ejemplo:

  var memo  = Format#createMemoFromStr(
                 "Memo|con líneas|centradas", 1);

 Format#addLineToMemo(memo,
     "y uno a la derecha", 2, PhDisplay.maxColumns());

  for (var i = 0; i < PhType.count(memo); i++)
  {
    PhDisplay.putString(i, 0,
      PhDisplay.NORMAL,
      PhType.getValue(memo, i));
  }

Salida:

          Memo
       con líneas
       centradas
    y uno a la derecha

getHexAsString

Format#getHexAsString(hexString)

Transforma una string de valores hexadecimales en los caracteres ASCII correspondientes.

Parámetros
**hexString** - String de valores ASCII en hexadecimal.

Debe comenzar con "0x".

Devuelve
String con caracteres ASCII.

Ejemplo:

var string = Format#getHexAsString("0x48656C6C6F");

Salida:

string: "Hello"

getStringAsHex

Format#getStringAsHex(string)

Transforma una string de caracteres ASCII en una string con valores hexadecimales de los caracteres respectivos.

Parámetros
**string** - String de caracteres ASCII.
Devuelve
String con valores hexadecimales.

Ejemplo:

var string = Format#getStringAsHex("Hello");

Salida:

string: "0x48656c6c6f"

getHexDigitAsInteger

Format#getHexDigitAsInteger(digit)

Devuelve el valor decimal de un carácter hexadecimal de un dígito.

Parámetros
**digit** - String de un carácter de un dígito hexadecimal.
Devuelve
Valor decimal del dígito hexadecimal.

Ejemplo:

var digit = Format#getHexDigitAsInteger("F");

Salida:

digit: 15

zfill

Format#zfill(string, width)

Crea una String de longitud width con la string pasada por el parámetro alineado a la derecha con ceros a la izquierda.

Parámetros
**string** - String para usar.

**width** - Número máximo de columnas para llenar.
Devuelve
String de longitud y ancho con ceros a la izquierda.

Ejemplo:

var string = Format#zfill("123", 6);

Salida:

string: "000123"

strPadLeft

Format#strPadLeft(string, width, pad)

Devuelve la string rellenada a la izquierda con la(s) string(s) de pad de ancho width.

Parámetros
**string** - String para usar

**width** - Número máximo de columnas para llenar.

**pad** - String para repetirse a la izquierda de la string.
Devuelve
String de cuerda llena a la izquierda por una o más pad. La última string pad de la izquierda se puede truncar hasta completar el ancho.

Ejemplo:

var string = Format#strPadLeft("RIGHT", 19, "left");

Salida:

string: "ftleftleftleftRIGHT"

strPadRight

Format#strPadRight(string, width, pad)

Devuelve la string rellenada a la derecha con la(s) string(s) de pad de ancho width.

Parámetros
**string** - String para usar

**width** - Número máximo de columnas para llenar.

**pad** - String para repetirse a la derecha de la string.
Devuelve
String de cuerda llena a la derecha por una o más pad. La última string pad de la derecha se puede truncar hasta completar el ancho.

Ejemplo:

var string = Format#strPadRight("LEFT", 21,"right");

Salida:

string: "LEFTrightrightrightri"

getMoneyAsStringCurrency

Format#getMoneyAsStringCurrency(value, currency, decimals, decimalSeparator, thousandsSeparator)

Transforma el valor entero decimal en una string con formato de valor monetario.

Parámetros
**value** - Tipo entero con valor total más posiciones decimales.

**currency** - String con símbolo de moneda.

**decimals** - Número de decimales a considerar.

**decimalSeparator** - Carácter separador decimal.

**thousandsSeparator** - Carácter separador de miles.
Devuelve
String monetaria con formato de valor.

Ejemplo:

var value = 654321;
var stringValue = "";

if (typeof value == 0)
  stringValue = Format#getMoneyAsStringCurrency(value, "$", 2, ",", ".");

Salida:

stringValue: "$ 6.543,12"

getStringAsStringCurrency

Format#getStringAsStringCurrency(value, currency, decimals, decimalSeparator, thousandsSeparator)

Formatee la string que contiene el valor en una string formateada para valor monetario.

Parámetros
**value** - Tipo de String con valor total más posiciones decimales.

**currency** - String con símbolo de moneda.

**decimals** - Número de decimales a considerar.

**decimalSeparator** - Carácter separador decimal.

**thousandsSeparator** - Carácter separador de miles.
Devuelve
String monetaria con formato de valor.

Ejemplo:

  var value = "654321";
  var stringValue = "";

  if (typeof value == 2)
    stringValue = Format#getMoneyAsStringCurrency(value, "$", 2, ",", ".");

Salida:

stringValue: "$ 6.543,12"

strTrimLeft

Format#strTrimLeft(string)

Elimina los espacios en blanco iniciales de la string.

Parámetros
**string** - String para usar
Devuelve
String sin espacios en blanco iniciales, si está presente.

Ejemplo:

var string = Format#strTrimLeft("      Prueba");

Salida:

string: "Prueba"

strTrimRight

Format#strTrimRight(string)

Elimina los espacios en blanco finales de la string.

Parámetros
**string** - String para usar
Devuelve
String sin espacios en blanco finales, si están presentes.

Ejemplo:

var string = Format#strTrimLeft("Prueba      ");

Salida:

string: "Prueba"

strSplit

Format#strSplit(string, separator)

Romper la string por separador en una lista PhList.

Parámetros
**string** - String para romper.

**separator** - Carácter que indica la ruptura de la string en un elemento de lista.
Devuelve
PhList que contiene fragmentos de la string separados por separador.

Ejemplo:

  var lista = Format#strSplit("String-para romper", "-");

  for (var i = 0; i < PhList.count(lista); i++)
  {
     PhDisplay.putString(i, 0,
       PhDisplay.NORMAL,
       PhList.get(lista, i));
  }

Salida:

String
para
romper

GlobalComm

package://phast#comm/global_comm.wmlsc
package://phast#comm/const.wmlsc

Módulo de gestión de conexiones

Errores de comunicación

Error Descripción
E_COMM_OK() Éxito
> E_COMM_ERROR()
E_COMM_ABORT() Operación cancelada
E_COMM_TIMEOUT() Timeout
E_COMM_SEND() Fallo al enviar
E_COMM_RECV() Fallo al recibir
E_COMM_TLS_HANDSHAKE() No se pudo establecer una conexión segura
E_COMM_TLS_CERT() Falla del certificado
E_COMM_TLS_CERT_NO_LOADED() No se pudo cargar el certificado
E_COMM_TLS_REQUIRED() Se requiere conexión tls
E_COMM_UNKNOW() Error desconocido

Tipos de uso de conexión

Usage
CommConst#USAGE_TRANSACTION()

Sumario

Función Descripción
resetusardPriorityLevels Inicializa el control de los intentos de conexión. Se debe llamar antes de iniciar una conexión.
startConnection Inicia una conexión TCP/IP directa.
getGlobalComm Recupera el identificador de comunicación global.
finishConnection Termina una conexión.

ResetUsedPriorityLevels

GlobalComm#resetUsedPriorityLevels()

Inicializa el control de los intentos de conexión. Esta función siempre debe llamarse antes de iniciar una conexión.

Parámetros

Ninguno

startConnection

GlobalComm#startConnection(id, ip, port, certificate, blocking)

Inicia una conexión TCP/IP directa.

Parámetros
Nombre Tipo Descripción
id Integer Se utiliza para controlar la aplicación que solicitó la conexión.
ip String La dirección (IPv4) de la máquina de destino
port Integer Puerto de destino
certificate String Nombre del certificado que se utilizará con la seguridad TLS en la comunicación
custom Array Lista de argumentos para la conexión personalizada

Parámetros Custom

Nombre Tipo Descripción
blocking Boolean Identifica si la conexión es blocante
serverName String Dirección del servidor
certName String Nombre del certificado
timeout Integer Tiempo máximo de conexión en milisegundos
singleAttmp Boolean Flecha si la conexión se intentará realizar una sola vez
commType Hexadecimal Tipo de comunicación
Devuelve
Handle de conexión en caso de éxito o E_COMM. (Ver sección **Errores de comunicación**)

getGlobalComm

GlobalComm#getGlobalComm()

Recupera el handle de comunicación global.

Parámetros

Ninguno

Devuelve

getConnectionComm

GlobalComm#getConnectionComm()

Recupera el comm pasado

Parámetros

Ninguno

Devuelve

finishConnection

GlobalComm#finishConnection(usage)

Finaliza una conexión.

Parámetros
**usage** - Uso de la conexión a terminar (Ver sección **Tipos de Uso de conexión**))

Ejemplo:

use url CommConst  "package://phast#comm/const.wmlsc";
use url GlobalComm "package://phast#comm/global_comm.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Input      "package://libs#ui/input.wmlsc";

extern function ExampleCommunication()
{
  var hostIp;
  var hostPort;
  var ip;
  var  input = Input#inputString("Dirección IP:", invalid, &ip, "NNN.NNN.NNN.NNN", 1, 12,
  (Input#DIRECTION_LEFT() | Input#CHAR_NUMERICO()), String.getValue('.'), true);

  GlobalComm#resetusardPriorityLevels();

  if (input == Input#INPUT_OK())
  {
    input = Input#inputString("Puerta:", invalid, &port, invalid, 1, 5,
     (Input#DIRECTION_LEFT() | Input#CHAR_NUMERICO()), String.getValue('.'), true);
    if (input == Input#INPUT_OK())
    {
      var ret = GlobalComm#startConnectionMngr(CommConst#USAGE_TRANSACTION(), hostIp, hostPort, invalid, true);
      if(ret == GlobalComm#E_COMM_OK())
      {
        Message#showMessage("Communication OK!", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
      }
      else
      {
        Message#showMessage("Communication Fail!", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
      }

      GlobalComm#finishConnection(CommConst#USAGE_TRANSACTION());
    }
  }

}

Salida:

Communication OK!

Input

package://phast#ui/input.wmlsc

Este módulo proporciona funciones para capturas interactivas tan diversas como strings, contraseñas, valores numéricos, fechas, menús, etc.

Constantes

Atributos

Atributo Valor Descripción
ALIGN_LEFT 0x00 Alineación izquierda
ALIGN_RIGHT 0x01 Alineación derecha
ALIGN_CENTER 0x02 Alineación centro
ALLOW_NUMBERS 0x10 Entrada de número
ALLOW_LOWERCASE_LETTERS 0x20 Entrada de caracteres en minúsculas
ALLOW_UPPERCASE_LETTERS 0x40 Entrada de caracteres en mayúsculas
ALLOW_SYMBOLS 0x80 Entrada de símbolo
ALLOW_EVERYTHING 0xF0 Cualquier carácter.

Devuelves do menu

Constante Descripción
RET_MENU_NONE Sin retorno
RET_MENU_CANCEL Cancelado por el usuario
RET_MENU_PREVIOUS Menú anterior
RET_MENU_NEXT Siguiente menú
RET_MENU_TIMEOUT Cancelado por timeout

getString

Input#getString(label, hint, initialValue, maxLen, attributes, attrs)

Captura una string sin formato.

Parámetros
Nombre Tipo Descripción
label String Texto explicativo sobre el textBox
hint obsoleto
initialValue String Valor inicial que aparecerá en el textBox
maxLen String Tamaño máximo de entrada
attributes String Modificadores de entrada. Se puede combinar mediante "
attrs Array Atributos de modificación
Atributos de modificación.
Nombre Tipo Descripción
editMode Integer Modo de edición del componente
Field#E_OPTIONAL
Field#E_REQUIRED
minLen Integer Tamaño mínimo de entrada
Devuelve
String con el valor capturado
Ejemplo
use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Field      "package://phast#trns/field.wmlsc";

var result = Input#getString ("String para capturar:", "", "", 15, invalid, [Field#E_REQUIRED(), 1])
Message#showMessage("String capturada:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Salida
String para capturar: teste
String capturada: teste

getPassword

Input#getPassword(label, hint, maxLen)

Captura una string sin mostrar los caracteres.

Parámetros
**label** - string con el texto explicativo sobre el textBox

**hint** - obsoleto

**maxLen** - entero con tamaño máximo de entrada
Devuelve
String con la contraseña capturada

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var result = Input#getPassword ("Password para capturar:", "", 15);
Message#showMessage("Password capturada:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Password para capturar: *****
Password capturada: teste

getNumericPassword

Input#getNumericPassword(label, hint, maxLen)

Captura una string numérica sin mostrar los caracteres.

Parámetros
**label** - string con el texto explicativo sobre el textBox

**hint** - obsoleto

**maxLen** - tamaño máximo de entrada
Devuelve
String numérica con contraseña capturada

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var result = Input#getNumericPassword ("Password para capturar:", "", "", 15, invalid, true);
Message#showMessage("Password capturada:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Password para capturar: ******
Password capturada: 123456

getSelection

Input#getSelection(label, menuItems, initialValue)

Crea un menú de interacción del operador

Parámetros
**label** - String con el título del menú

**menuItems** - PhType con el tipo stringList que contiene los elementos que se mostrarán

**initialValue** - Índice del elemento preseleccionado en la visualización del menú
Devuelve
Entero con el índice del elemento seleccionado por el operador o una de las constantes de retorno del menú. Ver constantes.

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var opc  = PhType.create("stringList");
var menu = PhType.get(opc);

PhList.add(menu, "Uno");
PhList.add(menu, "Dos");
PhList.add(menu, "Tres");
PhList.add(menu, "Cuatro");

var result = Input#getSelection("Selection", menu, 0);
Message#showMessage("Selection:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Selection: 1

getByte

Input#getByte(label, hint, initialValue) Descripción ...

Captura un byte. Valores válidos en el rango de 0x00 a 0xff.

Parámetros
Nombre Tipo Descripción
label String String con el texto explicativo sobre el cuadro de texto
hint deprecated
initialValue String Valor inicial que aparecerá en el cuadro de texto
Devuelve
Valor de byte capturado

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

extern function inputs()
{
 var result = Input#getByte ("Capturar Byte", "", 0);
 Message#showMessage("Byte Capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
Salida
Byte Capturado: 50

getByteExt

Input#getByteExt(label, hint, initialValue, editMode, minValue, maxValue) Descrição ...

Captura un byte. Valores válidos en el rango de 0x00 a 0xff.

Parámetros
Nombre Tipo Descripción
label String string con el texto explicativo sobre el textBox
hint obsoleto
initialValue String Valor inicial que aparecerá no textBox
editMode Number Habilitar el modo de edición, ver sesión field
minValue Hexadecimal Tamaño mínima
maxValue Hexadecimal Tamaño máximo.
Devuelve
Valor do byte capturado
Ejemplo
use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Field      "package://phast#trns/field.wmlsc";

extern function inputs()
{
 var result = Input#getByteExt("Capturar Byte", "", 0, Field#E_REQUIRED(), 1, 15 );
 Message#showMessage("Byte Capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
Salida:
Byte Capturado: 50

getBCD

Input#getBCD(label, hint, initialValue, maxLen)

Captura un valor BCD (Binary Coded Decimal).

Parámetros
**label** - string con el texto explicativo sobre el textBox

**hint** - obsoleto

**initialValue** - valor inicial que aparecerá en el textBox

**maxLen** - tamaño máximo de captura
Devuelve
String con el valor BCD capturado

Ejemplo:

var result = Input#getBCD ("Capturar BCD", "", invalid, 10);
Message#showMessage("BCD capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Entrada:

Capturar BCD: 22

Salida:

BCD capturado: 34

getHEX

Input#getHEX(label, hint, initialValue, timeOut, maxSize, editMode)

Captura un valor en base hexadecimal.

Parámetros

label - string con el texto explicativo sobre el textBox

hint - obsoleto

initialValue - valor inicial que aparecerá en el textBox

timeOut - tiempo, la captura se cancela automáticamente si está inactiva.

maxSize - tamaño máximo de captura

editMode - Modo de edición. Ver em Field.

Devuelve
Descripción ...

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Field      "package://phast#trns/field.wmlsc";

var result = Input#getHEX ("Capturar HEX", "", invalid, 10000, 10, Field#E_REQUIRED());
Message#showMessage("HEX capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

HEX Capturado: [1, 0x22]

getWord

Input#getWord(label, hint, initialValue)

Captura un valor de tipo word

Parámetros
**label** - string con el texto explicativo sobre el textBox

**hint** - obsoleto

**initialValue** - valor inicial que aparecerá en el textBox
Devuelve
Valor capturado

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var result = Input#getWord ("Capturar Word", "", 2);
Message#showMessage("Word capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

Word Capturado: 10

getWordExt

Input#getWordExt(label, hint, initialValue, editMode, minValue, maxValue )

Captura un valor de tipo word

Parámetros
Nombre Tipo Descripción
label String string con el texto explicativo sobre el textBox
hint obsoleto
initialValue valor inicial que aparecerá en el textBox
editMode Number Modo de edicíon. Ver em Field
minValue Hexadecimal Valor mínimo
maxValue Hexadecimal Valor máximo
Devuelve
valor capturado
Ejemplo**:
use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Field      "package://phast#trns/field.wmlsc";

var result = Input#getWordExt("Capturar Word", "", 2, Field#E_OPTIONAL(),  0, 0xffff);
Message#showMessage("Word capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
Salida
Word Capturado: 10

getDWord

Input#getDWord(label, hint, initialValue)

Captura un valor de tipo Dword

Parámetros
**label** - string con el texto explicativo sobre el textBox

**hint** - obsoleto

**initialValue** - valor inicial que aparecerá en el textBox
Devuelve
Valor capturado

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var result = Input#getDWord ("Capturar DWord", "", 2);
Message#showMessage("DWord capturado:|" + result, Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

DWord Capturado: 2124154517

validateString

Input#validateString(value, min, max, isBeep)

Valida si la longitud de la string informada se encuentra entre los valores mínimos y máximos informados.

Parámetros
**value** - string a ser validada

**min** - tamaño mínimo para validación

**max** - tamaño máximo para validación

**isBeep** - booleano que indica si se debe emitir un beep si **value** no es válido.
Devuelve
Si la string dada es válida, se devolverá la string en sí; de lo contrario, se devolverá **invalid**

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var string = "teste";
var result = Input#validateString (string, 2, 10, true);

Message#showMessage("result:|" + String.toString(result), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

var result2 = Input#validateString (string, 2, 4, true);

Message#showMessage("result:|" + String.toString(result2), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

result: teste
result2: invalid

extractStringData

Input#extractStringData(mask, value)

Extrae datos de una string que obedece al formato de máscara informado

Parámetros
**mask** - máscara en el formato [N]: sólo números, [A]: alfanumérico, [L]: sólo letras y [_]: cualquier carácter.

**value** - String con el valor a extraer.
Devuelve
String con el valor extraído según la máscara.

Ejemplo:

use url Input      "package://phast#ui/input.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var result = Input#extractStringData ("NN:NN:NN AA", "12:30:55 pm");
Message#showMessage("result:|" + String.toString(result), Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

Salida:

result: 123055pm

Math

package://tef#util/math.wmlsc

Este módulo proporciona funciones para operaciones matemáticas.

Sumario

Función Descripción
sumCalculate Devuelve la suma de dos números.
subCalculate Devuelve la resta de dos números.
divisionCalculate Devuelve la división de dos números.
multiplyCalculate Devuelve la multiplicación de dos números.
addDecimals Agrega el número de posiciones decimales en el último valor entero.
addThousandSeparator Agrega el separador de miles a un número.
calculate Realiza el cálculo de una expresión matemática.
convertInt Convierte un número decimal en un entero.
convertIntToDecimal Formatea un entero en un número decimal.
count Devuelve el número de veces que se encontró substr dentro de str.
countZeroOnLeft Devuelve el número de ceros a la izquierda.
countZeroOnRight Devuelve la cantidad de ceros a la derecha.
decimalPrepare Prepara un número para tener informado el número de decimales en el parámetro.
prepareNumber El método toma un valor de resultado de una operación y devuelve este número listo para ser *formateado por formatCurrency.
formatCurrency Formatea un entero en un número con formato currency.
formatIntToDecimal Formatea un entero a un número decimal.
formatNumber Formatea un entero en un número decimal con separadores.
frac Devuelve la parte fraccionaria del número. Si no existe, devolverá cero.
getMaxCasasDecimais (obsoleto) Devuelve el número de posiciones decimales del número que tiene la mayor cantidad de posiciones decimales en la expresión.
getMaxDecimal Devuelve el número de posiciones decimales del número que tiene la mayor cantidad de posiciones decimales en la expresión.
getTotalCasasDecimais (obsoleto) Devuelve el número total de posiciones decimales de una expresión matemática.
getTotalDecimal Devuelve el número total de posiciones decimales de una expresión matemática.
isComma Comprueba si el parámetro informado es una coma.
removeComma Quita la coma.
insertCommaDecimal Inserta una coma en una posición de valor determinada.
isDigit Comprueba si el parámetro informado es un número de "0 a 9".
isMoney Comprueba si el valor pasado es un valor monetario.
isExistDecimalValue Comprueba si el valor es un número con decimales.
isNumberHigherOrEqual Comprueba si a es mayor o igual que b.
isHigherNumber Compruebe si a es mayor que b.
isOperator Comprueba si el parámetro informado es un operador matemático.
isSpace Comprueba si el parámetro informado es un espacio.
isSymbol Comprueba si el parámetro informado es un símbolo.
lengthDecimalNumber Devuelve el número de dígitos de la fracción del número decimal.
normalizeDecimal Normaliza el número que tiene una fracción a los posiciones decimales deseados.
normalizeNumber Elimina los ceros a la izquierda cuando el número es un entero, cuando el número tiene decimales eliminará la coma.
operatorsStr Devuelve una lista de operadores matemáticos.
pow Realiza la operación matemática de puente.
removeThousandSeparator Elimina el separador de miles de un número.
removeZeroLeft (obsoleto) Elimina los ceros iniciales del número.
removeZeroOnLeft Elimina los ceros iniciales del número.
removeZeroOnRight Elimina los ceros finales del número.
round Realiza el redondeo matemático, con el número de posiciones pasadas.
roundAll Redondea un número a 2 posiciones decimales.
split Completa una lista con cadenas de acuerdo con el separador ingresado.
splitNumberExpression Devuelve una lista de cadenas de números de expresión.
trunc Devuelve la parte entera del número.

sumCalculate

Math#sumCalculate(a, b)

Devuelve la suma de dos valores.

Parámetros
**a** - Primer valor.

**b** - Segundo valor.
Devuelve
El resultado de la suma de a y b

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var x = "100,20";
var y = "200,40";
var result = Math#sumCalculate(x, y);
Dialogs.alert(result);

Salida:

"300,60"

subCalculate

Math#subCalculate(a, b)

Devuelve la resta de dos valores.

Parámetros
**a** - Primer valor.

**b** - Segundo valor.
Devuelve
El resultado de restar a y b

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var a = "100";
var b = "50";
var result = Math#subCalculate(a, b);
Dialogs.alert(result);

Salida:

"50"

divisionCalculate

Math#divisionCalculate(a, b)

Devuelve la división de dos valores.

Parámetros
**a** - Primer valor.

**b** - Segundo valor.
Devuelve
El resultado de dividir a por b

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var a = "40,20";
var b = "2";
var result = Math#divisionCalculate(a, b);
Dialogs.alert(result);

Salida:

"20,10"

multiplyCalculate

Math#multiplyCalculate(a, b)

Devuelve la multiplicación de dos valores.

Parámetros
**a** - Primer valor.

**b** - Segundo valor.
Devuelve
El resultado de multiplicar a y b

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var a = "30";
var b = "20";
var result = Math#multiplyCalculate(a, b);
Dialogs.alert(result);

Salida:

"600"

addDecimals

Math#addDecimals(value, decimals)

Agrega el número de posiciones decimales en el último valor entero.

Parámetros
 **value** - entero que contiene el valor.

**decimals** - entero que contiene el número de posiciones decimales.
Devuelve
String con el número con los posiciones decimales agregados.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = 1000;

var decimals = 2;

Math#addDecimals(value, decimals);

Salida:

"1000,00"

addThousandSeparator

Math#addThousandSeparator(value)

Agrega el separador de miles a un número.

Parámetros
**value** - entero que contiene el valor.
Devuelve
String que contiene el número con separadores de miles.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var valor = 1000000;

Math#addThousandSeparator(valor);

Salida:

1.000.000,00

calculate

Math#calculate(expr)

Realiza el cálculo de una expresión matemática.

Parámetros
**expr** - string que representa la expresión matemática.
Devuelve
Resultado entero del cálculo de la expresión matemática.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var expressao = "10 + 5 * 2";

Math#calculate(expressao);

Salida:

20

convertInt

Math#convertInt(value)

Convierte un número decimal en un entero.

Parámetros
**value** - string decimal que desea convertir.
Devuelve
Entero que contiene el resultado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "10,20";

Math#convertInt(numero)

Salida:

1020

convertIntToDecimal

Math#convertIntToDecimal(value, decimals, decimalSeparator)

Convierte un entero en un número decimal agregando el separador de posición elegido.

Parámetros
**value** -  string o entero con el valor.

**decimals** - entero que contiene el número de posiciones decimales.

**decimalSeparator** - string contendo separador decimal.
Devuelve
String con el número formateado con decimales.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "100000";

var decimals = 3;

Math#convertIntToDecimal(value, decimals, decimalSeparator);

Salida:

"100,000"

count

Math#count(str, substr)

Retorna a quantidade de vezes que substr foi encontrada dentro de str.

Parámetros
**str** - inteiro ou string contendo o str.

**substr** - inteiro com quantidade o substr.
Devuelve
Inteiro contendo a quantidade de ocorrência encontradas.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var str = 121;

var substr = 1;

Math#count(str, substr);

Salida:

2

countZeroOnLeft

Math#countZeroOnLeft(value)

Retorna a quantidade de zeros a esquerda de value.

Parámetros
**value** - Valor que deseja contar os zeros a esquerda.
Devuelve
Retorna a quantidade de zeros a esquerda.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "000100";
var result = Math#countZeroOnLeft(value);
Dialogs.alert(result);

Salida:

3

countZerosOnLeft

Math#countZerosOnRight(value)

Retorna a quantidade de zeros a direita de value.

Parámetros
**value** - Valor que deseja contar os zeros a direita.
Devuelve
Retorna a quantidade de zeros.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = 10000;
var result = Math#countZeroOnRight(value);
Dialogs.alert(result);

Salida:

4

decimalPrepare

Math#decimalPrepare(value, decimals, optional)

Prepara um número para ter a quantidade de casas decimais informada no parâmetro.

Parámetros
**value** - entero que contiene el valor.

**decimals** - entero que contiene el número de posiciones decimales.

**optional** - booleano que indica si el formato debe ser opcional. o no.
Devuelve
Inteiro com o resultado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = 100;

var qtdCasas = 2;

var optional = false;

Math#decimalPrepare(numero, qtdCasas, optional);

Salida:

100000

prepareNumber

Math#prepareNumber(value)

Metodo recebe um valor resultado de uma operacao e retorna esse numero pronto para ser *formatado pelo formatCurrency.

Parámetros
**value** - Valor.
Devuelve
Número pronto para ser formatado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "120";
var result = Math#prepareNumber(value);
Dialogs.alert(result);

Salida:

12000

formatCurrency

Math#formatCurrency(value)

Formata um numero inteiro para um numero com formato currency

Parámetros
**value** - valor do tipo inteiro.
Devuelve
String com o número formato monetária.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "10000";

Math#formatCurrency(numero);

Salida:

"100,00"

formatIntToDecimal

Math#formatIntToDecimal(value, decimals)

Formata um número inteiro para um número decimal com duas casas decimais.

Parámetros
**value** - inteiro com o valor.

**decimals** - inteiro com quantidade de casas decimais.
Devuelve
String con el número formateado con decimales.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "100000";

var decimals = 2;

Math#formatIntToDecimal(value, decimals);

Salida:

"100.000,00"

formatNumber

Math#formatNumber(value, decimals, decimalSeparator, thousandsSeparator)

Formata um número inteiro para um numero decimal com separadores

Parámetros
**value** - inteiro ou string contendo o valor.

**decimals** - entero que contiene el número de posiciones decimales.

**decimalSeparator** - string que contiene separador decimal.

**thousandsSeparator** - string que contiene el separador de millas.
Devuelve
String con el número formateado con separadores.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = 100000;

var decimals = 2;

var decimalSeperator = ",";

var thousandsSeparator = ".";

Math#formatNumber(value, decimals, decimalSeperator, thousandsSeparator);

Salida:

"1.000,00"

getMaxCasasDecimais (obsoleto)

Math#getMaxCasasDecimais(exp)

Devuelve el número de posiciones decimales del número que tiene el mayor número de posiciones decimales en la expresión.

Parámetros
**exp** - string que representa la expresión matemática.
Devuelve
Entero con número de posiciones decimales presentes en la expresión.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var expressao = "10,2+3,879";

Math#getMaxCasasDecimais(expressao);

Salida:

3

getMaxDecimal

Math#getMaxDecimal(exp)

Devuelve el número de posiciones decimales del número que tiene el mayor número de posiciones decimales en la expresión.

Parámetros
**exp** - string con la expresión matemática.
Devuelve
Entero con el número de posiciones decimales.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var expressao = "100,4234+3,87";

Math#getMaxDecimal(expressao);

Salida:

4

getTotalCasasDecimais (obsoleto)

Math#getTotalCasasDecimais(exp)

Devuelve el número total de posiciones decimales de una expresión matemática.

Parámetros
**exp** - string con la expresión matemática.
Devuelve
Entero con el número de posiciones decimales.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var expressao = "10,2+3,879";

Math#getTotalCasasDecimais(expressao);

Salida:

4

getTotalDecimal

Math#getTotalDecimal(exp)

Devuelve el número total de posiciones decimales de una expresión matemática.

Parámetros
**exp** - string que representa la expresión matemática.
Devuelve
Entero con número de posiciones decimales presentes en la expresión.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var expressao = "10,2+3,879";

Math#getTotalDecimal(expressao);

Salida:

4

isComma

Math#isComma(param)

Comprueba si el parámetro informado es una coma.

Parámetros
**param** - string que contiene el parámetro.
Devuelve
**true** si es cierto, **false** si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var virgula = ",";

Math#isComma(virgula);

Salida:

true

insertCommaDecimal

Math#insertCommaDecimal(value, position)

Inserta una coma en el valor en la posición pasada.

Parámetros
**value** - Valor.

**pos**   - Posición en la que desea insertar la coma.
Devuelve
El valor con la coma insertada en la posición dada.

Ejemplo:

var value = "1000";
var result = Math#insertCommaDecimal(value, 2);
Dialogs.alert(result);

Salida:

10,00

isDigit

Math#isDigit(digit)

Comprueba si el parámetro informado es un número de "0 a 9".

Parámetros
**digit** - string que contiene el número
Devuelve
**true** si es verdadero, **false** en caso contrario.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "5";

Math#isDigit(numero);

Salida:

true

isMoney

Math#isMoney(value)

Valida se o valor informado é monetário.

Parámetros
**value** - string que contiene el número
Devuelve
**true** se verdadeiro, **false** caso contrário.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value1 = "100,32";
var value2 = "100,32,45";
var result1 = Math#isMoney(value1);
var result2 = Math#isMoney(value2);
Dialogs.alert(result1);
Dialogs.alert(result2);

Salida:

true
false

isExistDecimalValue

Math#isExistDecimalValue(value)

Comprueba si el valor es un número con decimales.

Parámetros
**value** - valor en tipo string.
Devuelve

true si es cierto, false si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "10,00";

Math#isExistDecimalValue(numero);

Salida:

true

isNumberHigherOrEqual

Math#isNumberHigherOrEqual(a, b)

Comprueba si a es mayor o igual que b.

Parámetros
**a** - entero que contiene el a.

**b** - entero que contiene el b.
Devuelve

true si es cierto, false si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "10,20";

var a = 10;

var b = 5;

Math#isNumberHigherOrEqual(a, b);

Salida:

true

isHigherNumber

Math#isHigherNumber(a, b)

Comprueba si a es mayor que b.

Parámetros
**a** - entero que contiene el a.

**b** - entero que contiene el b.
Devuelve

true si es cierto, false si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var a = 10;
var b = 5;
var result = Math#isHigherNumber(a, b);
Dialogs.alert(result);

Salida:

true

isOperator

Math#isOperator(operator)

Comprueba si el parámetro informado es un operador matemático.

Parámetros
**operator** - cadena que contiene el operador.
Devuelve
**true** si es cierto, **false** si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var sum = "+";

Math#isOperator(telefone);

Salida:

true

isSpace

Math#isSpace(param)

Comprueba si el parámetro informado es un espacio.

Parámetros
**param** - string que contiene el parámetro.
Devuelve
**true** si es cierto, **false** si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var espaco = " ";

Math#isSpace(espaco);

Salida:

true

isSymbol

Math#isSymbol(symbol)

Comprueba si el parámetro informado es un símbolo.

Parámetros
**symbol** - cadena que contiene un símbolo.
Devuelve
**true** si es cierto, **false** si no.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var simbolo = ".";

Math#isOperator(simbolo);

Salida:

true

lengthDecimalNumber

Math#lengthDecimalNumber(value)

Devuelve el número de dígitos de la fracción del número decimal.

Parámetros
**value** - string con el valor.
Devuelve
entero con el número de números después de la coma.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "99,98373";

Math#lengthDecimalNumber(value);

Salida:

5

normalizeDecimal

Math#normalizeDecimal(value, decimals)

Normaliza el número que tiene una fracción a los posiciones decimales deseados.

Parámetros
**value** - string con el valor.

**decimals** - número entero de posiciones decimales.
Devuelve
String con el número formateado con decimales.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "12,2";

var decimals = 3;

Math#normalizeDecimal(value, decimals);

Salida:

"12,222"

operatorsStr

Math#operatorsStr()

Devuelve una lista de operadores matemáticos.

Parámetros
Ninguno.
Devuelve
**list** con los operadores matemáticos: "+", "-", "*", "/", "x".

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

Math#operatorsStr();

Salida:

["+", "-", "*", "/",...]

pow

Math#pow(base, expoente)

Realiza la operación de potencia matemática.

Parámetros
**base** - entero que representa la base de potencia.

**expoente** - entero que representa el exponente de potencia.
Devuelve
Resultado de potencia entera.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var base = 2;

var expoente = 10;

Math#pow(base, expoente);

Salida:

1024

removeComma

Math#removeComma(param)

Elimina la(s) coma(s) del valor pasado.

Parámetros
**param** - Valor.
Devuelve
el valor sin la coma

Ejemplo:

var value = "200,30";
var result = Math#removeComma(value);
Dialogs.alert(result);

Salida:

20030

removeThousandSeparator

Math#removeThousandSeparator(value)

Elimina el separador de miles de un número.

Parámetros
**value** - String que contiene el valor.
Devuelve
String devuelve el número sin los separadores de miles.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var valor = "1.000.000";

Math#removeThousandSeparator(valor);

Salida:

1000000

removeZeroLeft

Math#removeZeroLeft(value)

Elimina los ceros iniciales del número.

Parámetros
**value** - valor en tipo string.
Devuelve
String que contiene el resultado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "00100";

Math#removeZeroLeft(value);

Salida:

"100"

removeZeroOnLeft

Math#removeZeroOnLeft(value)

Elimina los ceros iniciales del número.

Parámetros
**value** - valor en tipo string.
Devuelve
String que contiene el resultado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "00100";

Math#removeZeroOnLeft(value);

Salida:

"100"

removeZeroOnRight

Math#removeZeroOnRight(value)

Elimina los ceros finales del número.

Parámetros
**value** - valor en tipo string.
Devuelve
String que contiene el resultado.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = 1000;
var result = Math#removeZeroOnRight(value);
Dialogs.alert(result);

Salida:

"1"

round

Math#round(value, decimalPlaces)

Realiza el redondeo matemático, con el número de posiciones pasadas.

Parámetros
**value** - String que contiene el valor.

**decimalPlaces** - entero que contiene el número del decimal que se va a redondear.
Devuelve
String con el número con el valor redondeado

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "2,199999";

var decimalPlaces = 2;

Math#round(value, decimalPlaces);

Salida:

"2,20"

roundAll

Math#roundAll(value)

Redondea un número a 2 posiciones decimales.

Parámetros
**value** - string que contiene el valor.
Devuelve
String con el número con el valor redondeado

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "33,3333333";

Math#roundAll(value);

Salida:

"33,33"

split

Math#split(list, str, separator)

Complete una lista con cadenas de acuerdo con el separador dado.

Parámetros
**list** - PhListque recibirá la string separada.

**str** - string a quien quieras separar.

**separator** - string con el separador.
Devuelve
Ninguno.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "5,25";

var nomes = "João, Maria, Lúcia, Carlos";

var list = [];

var separador = ",";

Math#split(list, stringNomes, separador);

Salida:

"La variable de lista contendrá los siguientes valores: ["João", "Maria", "Lúcia", "Carlos"]".

splitNumberExpression

Math#splitNumberExpression(lista, exp)

Devuelve una lista de cadenas de números de expresión.

Parámetros
**lista** - PhList que recibirá la string separada.

**exp** - string con la expresión matemática.
Devuelve
Ninguno.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var  list = [];

var expressao  =  "10 + 5 * 2";

Math#splitNumberExpression(lists, expressao);

Salida:

La variable de lista contendrá los siguientes valores: [10, 5, 2]

trunc

Math#trunc(number)

Devuelve la parte entera del número.

Parámetros
**number** - string con el número decimal.
Devuelve
String - Devuelve la parte entera del número.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "10,20";

Math#trunc(numero);

Salida:

"10"

frac

Math#frac(number)

Devuelve la parte fraccionaria del número. Si no existe, devolverá cero.

Parámetros
**number** - string con el número decimal.
Devuelve
String - Devuelve la parte fraccionaria de un número decimal.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var numero = "5,25";

Math#frac(numero)

Salida:

"25"

normalizeNumber

Math#normalizeNumber(value)

Elimina los ceros a la izquierda cuando el número es un entero, cuando el número tiene decimales eliminará la coma.

Parámetros
**value** - string con el valor.
Devuelve
Entero con el nuevo valor.

Ejemplo:

use url Math  "package://tef#util/math.wmlsc";

var value = "0210";

Math#normalizeNumber(value);

Salida:

210

Message

package://tefui#ui/message.wmlsc

Sumario

Función Descripción
clearMsg Borra el mensaje en pantalla en caso de terminal textual.
confirmDialog Muestra un cuadro de diálogo de confirmación en pantalla con las opciones Sí y No.
msgsInfo Muestra los mensajes de impresión, si la impresora no tiene papel, el número de serie de la tarjeta SIM, si la tarjeta SIM no está presente, el número de serie del POS y la versión del sistema operativo.
showError Muestra un mensaje de error con un icono en el centro de la pantalla.
showMemo Muestra un mensaje con opciones de desplazamiento.
showMemoExt Implementación que muestra un memo en pantalla, con desplazamiento, tiempo de visualización, bip, tecla de atajo y uso del componente Botón en terminales con soporte gráfico No se admite impresión.
showMemoInfo Implementación que muestra un memo en pantalla, con desplazamiento, tiempo de visualización, bip, tecla de atajo para imprimir y uso en terminales con soporte gráfico.
showMessage Muestra un mensaje en la pantalla.
showMessageIcon Muestra un mensaje con un icono.
showMessageMemo Muestra un mensaje en pantalla de tipo memo.
showMessageMemoWait Muestra un mensaje en la pantalla de tipo memo siempre que no se presione la tecla ENTER o ESC.
showQuestion Mostrar un mensaje en la pantalla que contiene un pie de página con las opciones I18nMsg##CANCEL() e I18nMsg##ENTER() del módulo: use url I18n "package://phast#i18n/messages.wmlsc"; Con soporte de terminal de texto.
showQuestionExt Tiene la opción de mostrar o no un pie de página con las opciones Enter y Cancelar. Con soporte de terminal textual.

Constantes

Atributo Valor Descripción
BEEP_ALERT 100 Tiempo en milisegundos del bip cuando se muestra una alerta
BEEP_ERROR 500 Tiempo en milisegundos del bip cuando se muestra un mensaje de error
BEEP_KEY 30 Tiempo en milisegundos del sonido cuando se presiona una tecla
BEEP_MESSAGE 50 Tiempo en milisegundos del bip cuando se muestra un mensaje
DELAY_ALERT 2950 Tiempo en milisegundos para mostrar una alerta en la pantalla
DELAY_DISPLAY 30000 Tiempo en milisegundos de visualización de un mensaje en la pantalla
DELAY_ERROR 2950 Tiempo en milisegundos de visualización de un mensaje de error en la pantalla
DELAY_MEMO 2800 Tiempo en milisegundos de visualización de una nota en la pantalla
DELAY_MESSAGE 2950 Tiempo en milisegundos de visualización de un mensaje en la pantalla
MSG_ALIGN_CENTER 70 Alinear el texto del mensaje con el centro
MSG_ALIGN_LEFT 90 Alineación del texto del mensaje a la izquierda
MSG_ALIGN_TOP 80 Alineación del texto del mensaje en la parte superior
TIMEOUT_PROCESSING 60000 Procesamiento de tiempo de espera de visualización de mensajes en milisegundos

clearMsg

Message#clearMsg()

Borra el mensaje en pantalla en caso de terminal textual.

Devuelve
Ninguno

confirmDialog

Message#confirmDialog(title, msg, timeOut)

Muestra un cuadro de diálogo de confirmación en pantalla con las opciones Sí y No.

Parámetros

title - string - título del diálogo;

msg - string - contenido del mensaje;

timeOut - integer - tiempo en milisegundos para mostrar el diálogo;

Devuelve

true o false.

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#confirmDialog("Title","Hello World", 5000);

msgsInfo

Message#msgsInfo()

Muestra los mensajes de impresión, si la impresora no tiene papel, el número de serie de la tarjeta SIM, si la tarjeta SIM no está presente, el número de serie del POS y la versión del sistema operativo.

Devuelve
PhList

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#msgsInfo();

showError

Message#showError(title, msg, delay, beep)

Muestra un mensaje de error con un icono en el centro de la pantalla.

Parámetros

title - string - título del mensaje que se mostrará;

msg - string - Mensaje que se mostrará;

delay - integer - Tiempo (en milisegundos) que se mostrará el mensaje;

beep - integer - tiempo de bip en milisegundos, (0 indica que no hay bip);

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";
Message#showError("Atención", "Esta operación no se pudo realizar",  Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

showMemo

Message#showMemo(title, memo, block, clearDisp)

Muestra un mensaje con opciones de desplazamiento.

Parámetros

title - string -título del mensaje que se mostrará;

memo- string - Cuerpo del mensaje;

block - boolean -. Si es true, hace que funcione el bloqueo. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, el mensaje siempre está bloqueando;

clearDisp booleano. Si es true, la pantalla se borrará antes de la presentación de la nota. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla;

Devuelve
Ninguno

showMemoExt

Message#showMemoExt(title, memo, timeOut, beep, clearDisp, hotkey, showExit)

Implementación que muestra un memo en pantalla, con desplazamiento, tiempo de visualización, bip, tecla de atajo y uso del componente Botón en terminales con soporte gráfico. No se admite impresión.

Parámetros

title - string - Título del mensaje;

memo - string ou Memo - contiene el cuerpo del mensaje;

timeOut - integer - Tiempo en milisegundos para mostrar;

beep - integer - tiempo de bip en milisegundos, (0 indica que no hay bip);

clearDisp - booleano - Si es true, la pantalla se borrará antes de la presentación de la nota. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla;

hotkey - integer - Basado en la tabla ASCII, comenzando desde 48 para la tecla física POS 0 a 9, sucesivamente y 27, 8 y 13 para las teclas físicas POS, Cancelar, Retroceso y Enter, respectivamente;

showExit - boolean - que indica si se muestra o no el botón de salida cuando está en terminales con soporte de gráficos;

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showMemoExt("Hello World", "my content", 5000, 30, true, 13, true);

showMemoInfo

Message#showMemoInfo(title, memo, timeOut, beep, clearDisp, hotkey, showExit, labelExit)

Implementación que muestra un memo en scroll en pantalla, visualización de tiempo, bip, tecla de atajo para imprimir y uso en terminales con soporte gráfico.

Parámetros

title - string - título del mensaje que se mostrará;

memo - Memo ou Map - contiene el cuerpo del mensaje;

timeOut - integer - tiempo en milisegundos para mostrar;

beep - integer - tiempo de bip en milisegundos, (0 indica que no hay bip);

clearDisp - boolean - Si es true, la pantalla se borrará antes de la presentación de la nota. NOTA: este parámetro está obsoleto en terminales con soporte gráfico. En estos casos, la pantalla siempre se limpiará antes que la pantalla.

hotkey - integer - en terminales con soporte de texto se basa en la tabla ASCII, donde al presionar la tecla de acceso rápido se imprimirá el memo. De 48 para la tecla física del POS 0 a 9, sucesivamente y 27, 8 y 13 para las teclas físicas del POS, Cancelar, Retroceso y Enter;

showExit - boolean - (obsoleto) indicando si mostrar o no el botón de salida cuando se encuentra en terminales con soporte gráfico;

labelExit - string - (obsoleto) texto que se mostrará en el botón de salida de memo;

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";
use url Map        "package://vm#core/map.wmlsc";

var map = Map#create();

Map#put(map,  "Mensaje 01",  "1");
Map#put(map,  "Mensaje 02",  "2");

Message#showMemoInfo("Hello World", map, 5000, 30, false, 13, true, "Salir");

showMessage

Message#showMessage(msg, delay, attrs)

Muestra un mensaje en la pantalla.

Parámetros
  • msg: Mensaje que se mostrará;

  • delay: tiempo (en milisegundos) que se mostrará el mensaje Nota: use "invalid" para mensajes sin una demora definida o mostrados hasta el final de la ejecución de otra función.

  • attrs: Lista de cuatro posiciones que contiene valores enteros positivos, donde:
  • [0] = beepTime, tiempo en milisegundos del pitido, valor predeterminado invalid
  • [1] = alignText, valor entero que representa la alineación del texto. El valor predeterminado está definido por la constante Message#MSG_ALIGN_CENTER()
  • [2] = top, valor entero que representa la distancia en píxeles del mensaje desde la parte superior. El valor predeterminado es 55
  • [3] = gap, valor entero que representa el margen en píxeles en relación con otros elementos de la pantalla. El valor predeterminado es 25
Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showMessage("Hello World", 5000, [5000, 0, 0, 10]);

showMessageIcon

Message#showMessageIcon(title, msg, delay, beep, approved)

Muestra un mensaje con un icono.

Parámetros

title - string - título del mensaje que se mostrará;

msg - string - mensaje a ser exibida;

delay - integer - tiempo (en milisegundos) que se mostrará el mensaje;

beep - integer - tiempo de bip en milisegundos, (0 indica que no hay bip);

approved - boolean - true muestra un mensaje con un icono de éxito; de lo contrario, muestra un mensaje con un icono de error;

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";
Message#showMessageIcon("Titulo", "Mi mensaje de ejemplo",  Message#DELAY_ALERT(), Message#BEEP_MESSAGE(), invalid);

showMessageMemo

Message#showMessageMemo(msg, delay, beepTime)

Muestra un mensaje en pantalla de tipo memo.

Parámetros

msg - string - contenido del mensaje;

delay - integer - tiempo de bip en milisegundos, (0 indica que no hay bip);

beepTime - integer - tiempo de duración del bip en milisegundos;

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showMessageMemo("Hello World", 5000, 30);

showMessageMemoWait

Message#showMessageMemoWait(msg, delay, beepTime)

Muestra un mensaje en la pantalla de tipo memo siempre que no se presione la tecla ENTER o ESC.

Parámetros

msg - string - contenido del mensaje;

delay - boolean - (obsoleto) visualización del mensaje de forma indefinida;

beepTime - integer - tiempo de duración del bip en milisegundos;

Devuelve
Ninguno

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showMessageMemoWait("Hello World", 0, 30);

showQuestion

Message#showQuestion(msg, beepTime, align)

Mostrar un mensaje en la pantalla que contiene un pie de página con las opciones I18nMsg##CANCEL() e I18nMsg##ENTER() del módulo: use url I18n "package://phast#i18n/messages.wmlsc"; Con soporte de terminal de texto.

Parámetros

msg - string - título del mensaje;

beepTime - integer - tiempo de duración del bip en milisegundos;

align - constant - respecto a la alineación del mensaje. Pode recibir: MSG_ALIGN_CENTER(),MSG_ALIGN_TOP() ou MSG_ALIGN_LEFT();

Devuelve

true o false.

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showQuestion("Hello World", 30, 70);

showQuestionExt

Message#showQuestionExt(msg, beepTime, footer, align)

Tiene la opción de mostrar o no un pie de página con las opciones Enter y Cancelar. Con soporte de terminal textual.

Parámetros

msg - string - contenido del mensaje;

beepTime - integer - tiempo de duración del bip en milisegundos;

footer - boolean - si se ingresa 1 permite la visualización de un pie de página con las opciones Enter y Cancel. Si se informa 0 no se presenta;

align - constant - respecto a la alineación del mensaje. Pode recibir: MSG_ALIGN_CENTER(),MSG_ALIGN_TOP() ou MSG_ALIGN_LEFT();

Devuelve

true o false.

Ejemplo:

use url Message    "package://tefui#ui/message.wmlsc";

Message#showQuestionExt("Hola mundo", 100, 1, Message#MSG_ALIGN_CENTER());

Operation

package://phast#utils/operations.wmlsc

Módulo responsable de operaciones específicas de la plataforma PhAST Client

communicationEcho

Operation#communicationEcho()

Realice una prueba de comunicación básica.

Parámetros
**Ninguno**
Devuelve
**Ninguno**

Ejemplo:

use url Op  "package://phast#utils/operations.wmlsc";

Op#communicationEcho();

Salida:

Éxito en 46 ms.

RestartApplication

Operation#restartApplication(noConfirm)

Reinicia la terminal POS.

Parámetros
**noConfirm** - booleano que indica si PhAST pedirá confirmación antes de reiniciar. Si es true, la terminal se reiniciará sin confirmación.
Devuelve
Reinicie la terminal.

Ejemplo:

use url Op  "package://phast#utils/operations.wmlsc";

Op#restartApplication(true);

ReprintPrinter

Operation#reprintPrinter()

Vuelva a imprimir el último comprobante almacenado.

Parámetros
**Ninguno**
Devuelve
El comprobante reimpreso.

Ejemplo:

use url Op  "package://phast#utils/operations.wmlsc";
Op#reprintPrinter();

doInitialization

Operation#doInitialization(reason)

Realiza una inicialización de terminal POS.

Parámetros
**reason** - Finalidad de la inicialización. Puede tomar los siguientes valores:
  • "package://phast#utils/statistics.wmlsc##REASON_NONE"
  • "package://phast#utils/statistics.wmlsc##REASON_OPERATOR"
  • "package://phast#utils/statistics.wmlsc##REASON_EVENT"
  • "package://phast#utils/statistics.wmlsc##REASON_INTEGRATION"
  • "package://phast#utils/statistics.wmlsc##REASON_SERVER"
  • "package://phast#utils/statistics.wmlsc##REASON_UPDATE"
Devuelve
Si tiene éxito, inicialización de la terminal y actualización de las tablas de parámetros.

Ejemplo:

use url Op         "package://phast#utils/operations.wmlsc";
use url Statistics "package://phast#utils/statistics.wmlsc";

Op#doInitialization(Statistics#REASON_OPERATOR());

RemoveLotData

Operation#removeLotData()

Realiza la eliminación de los archivos de movimientos financieros del sistema.

Parámetros
**Ninguno**
Devuelve
Eliminación de archivos por lotes.

Ejemplo:

use url Op  "package://phast#utils/operations.wmlsc";

Op#removeLotData();

PhastMessage

package://phast#i18n/messages.wmlsc

Este módulo proporciona funciones con mensajes Phast predefinidos.

Sumario

Función Descripción
**getI18nMessageString Recibe el código del mensaje como parámetro, devuelve la cadena con el mensaje.

Constantes

Constantes Descripción
PHOEBUS_1 Devuelve una string con el texto. "Phoebus".
PHOEBUS_2 Devuelve una string con el texto. "Tecnologia".
VERSAO_ATUAL Devuelve una string con el texto. "PhAST Client".
CONFIGURATION Devuelve una string con el texto. "Instalação".
MSG_NOT_CONFIGURED Devuelve una string con el texto. "Não configurado".
MSG_NOT_INSTALLED Devuelve una string con el texto. "Não Inicializado".
MSG_NEED_UPDATE Devuelve una string con el texto. "Aguardando Inicialização".
MSG_LOCKED Devuelve una string con el texto. "Terminal | bloqueado".
APP_CLOSING Devuelve una string con el texto. "Encerrando...".
APP_CONFIGURATION_ERASED Devuelve una string con el texto. "Arquivos de configuração apagados".
APP_DATA_ERASED Devuelve una string con el texto. "Arquivos de dados apagados".
APP_ERASED Devuelve una string con el texto. "Arquivos de aplicação não apagados".
ERROR Devuelve una string con el texto. "Error".
PREFIX_ERROR Devuelve una string con el texto. "PC".
ALERT Devuelve una string con el texto. "ATENÇÃO".
CONFIRMATION Devuelve una string con el texto. "CONFIRMAÇÃO".
YES Devuelve una string con el texto. "Sim".
NO Devuelve una string con el texto. "Não".
E_WHILE_RECV Devuelve una string con el texto. "Falha ao receber".
E_WHILE_SEND Devuelve una string con el texto. "Falha ao enviar".
E_UNKNOW Devuelve una string con el texto. "Desconhecido".
E_COMM_TEST Devuelve una string con el texto. "Falha ao executar o |teste de comunicação".
AUTHORIZE Devuelve una string con el texto. "Autenticando...".
DIALING Devuelve una string con el texto. "Discando...".
DISCONNECTING Devuelve una string con el texto. "Desconectando...".
CONNECTING Devuelve una string con el texto. "Conectando...".
PROCESSING Devuelve una string con el texto. "Processando...".
CONNECTING_HOST Devuelve una string con el texto. "Conectando Servidor..".
COMUNICATION_TEST Devuelve una string con el texto. "Teste de Comunicação".
SENDING_FILES Devuelve una string con el texto. "Enviando arquivos...".
COMM_WAITING Devuelve una string con el texto. "Processando...".
CONNECT_SEC Devuelve una string con el texto. "Estabelecendo canal...".
SEDING Devuelve una string con el texto. "Transmitindo...".
RECEIVING Devuelve una string con el texto. "Recebendo...".
REMOVE_CONFIG_FILES Devuelve una string con el texto. "CONFIRMA REMOÇÃO |DA CONFIGURAÇÃO?".
REMOVE_DATA_FILES Devuelve una string con el texto. "CONFIRMA REMOÇÃO |DOS DADOS?".
REMOVE_APPLICATION Devuelve una string con el texto. "Confirma remoção |da aplicação?".
ASK_FOR_UPDATE Devuelve una string con el texto. "Uma nova versão está disponível. |Deseja atualizar o sistema?".
ASK_FOR_UPDATE_TITLE Devuelve una string con el texto. "G. de Atualizações".
OPERATOR_LABEL Devuelve una string con el texto. "Operadora".
RESTARTING Devuelve una string con el texto. "Reiniciando |terminal...".
ETH_INVALID_CONFIG Devuelve una string con el texto. "Configuração inválida |Favor ajustar".
CARD_MANUAL_INPUT_BAR Devuelve una string con el texto. "--- --- MAN ---".
SWIPE_CARD Devuelve una string con el texto. "Passe o cartão".
CARD_CVV_LABEL Devuelve una string con el texto. "Cód. Segurança Cartão".
CARD_CVV_HINT Devuelve una string con el texto. "Digite CVV".
CARD_CVV_ILLEGIBLE Devuelve una string con el texto. "Ilegível".
CARD_CVV_MISSING Devuelve una string con el texto. "Não possui".
CARD_MANUAL_INPUT_HINT Devuelve una string con el texto. "Número do cartão".
CARD_LAST4DIGITS_LABEL Devuelve una string con el texto. "4 últ. dígitos cartão".
CARD_LAST4DIGITS_HINT Devuelve una string con el texto. "Digite os 4 últimos dígitos".
CARD_EXPIRATION_LABEL Devuelve una string con el texto. "Validade cartão MM/AA".
CARD_REMOVE Devuelve una string con el texto. "RETIRE O CARTÃO".
PRINTING Devuelve una string con el texto. "Imprimindo...".
DETACH_RECEIPT Devuelve una string con el texto. "Destaque o | comprovante".
IMPRESSORA_SEM_PAPEL Devuelve una string con el texto. "IMPRESSORA SEM PAPEL! || POR FAVOR, | TROQUE A BOBINA".
ALERT_REIMPRESSAO Devuelve una string con el texto. "E FAÇA UMA REIMPRESSÃO.".
BATERIA_FRACA Devuelve una string con el texto. "BATERIA FRACA! ||POR FAVOR, RECARREGUE".
MSG_REPRINT Devuelve una string con el texto. "* REIMPRESSAO *".
ASK_FOR_RESTART Devuelve una string con el texto. "REINICIAR A APLICAÇÃO?".
ASK_FOR_SHUTDOWN Devuelve una string con el texto. "DESLIGAR O TERMINAL?".
INIT_VERSION Devuelve una string con el texto. "Versão Ini".
INIT_LOCAL Devuelve una string con el texto. "Local".
INIT_REMOTE Devuelve una string con el texto. "Servidor".
ASK_FOR_CONTINUE Devuelve una string con el texto. "DESEJA CONTINUAR?".
TRY_AGAIN Devuelve una string con el texto. "TENTAR NOVAMENTE?".
SHUTDOWN Devuelve una string con el texto. "Desligando o |terminal...".
SHUTDOWN_CONFIG Devuelve una string con el texto. "Tempo para desligar".
STANDBY_CONFIG Devuelve una string con el texto. "Tempo para |apagar a tela".
MSG_DEBUG Devuelve una string con el texto. "Versão exclusiva para testes! Não pode ser utilizada para fins comerciais.".
MSG_DEBUG_RECEBER Devuelve una string con el texto. "VAI RECEBER...".
MSG_DEBUG_TRANSMITIR Devuelve una string con el texto. "VAI TRANSMITIR...".
SHIFT_LABEL Devuelve una string con el texto. "Turno".
SHIFT_OPENED Devuelve una string con el texto. "Turno aberto".
SHIFT_CLOSED Devuelve una string con el texto. "Turno fechado".
REOPEN Devuelve una string con el texto. "Reabrir".
CLOSE Devuelve una string con el texto. "Fechar".
CLOSING Devuelve una string con el texto. "Fechamento".
REOPENING Devuelve una string con el texto. "Reabertura".
SUCCESS Devuelve una string con el texto. "Sucesso em".
FAIL Devuelve una string con el texto. "Falha em".
PHDM_TITLE Devuelve una string con el texto. "ATUALIZAÇÃO".
PHDM_AGUARDAR Devuelve una string con el texto. "Por Favor, Aguarde...".
PHDM_PREPARANDO_ATUALIZACAO Devuelve una string con el texto. "Preparando para atualização!".
PHDM_TELECARGA_AGENDADA Devuelve una string con el texto. "Atualização agendada".
MSG_WIFI_ESQUECER Devuelve una string con el texto. "Esquecer".
MSG_WIFI_CANCELAR Devuelve una string con el texto. "Cancelar".
MSG_WIFI_ATUALIZAR Devuelve una string con el texto. "ATUALIZAR".
MSG_CONFIRMATION_PEND Devuelve una string con el texto. "Pendente de |confirmação".
MSG_COMM_PROFILE_NOT_FOUND Devuelve una string con el texto. "Ninguno perfil de |comunicação configurado".
BTN_EXIT Devuelve una string con el texto. "Sair".
MSG_WIFI_OUTRA_REDE Devuelve una string con el texto. "OUTRA REDE...".
MSG_PHAST_CONF_SYNC Devuelve una string con el texto. "Sincronizando...".
MSG_PHAST_AUTO_RECONNECT Devuelve una string con el texto. "Conectando na |rede de dados".
MSG_PHAST_SIMCARD_DETECT Devuelve una string con el texto. "Detectando |chip...".
SUNDAY Devuelve una string con el texto. "Domingo".
MONDAY Devuelve una string con el texto. "Segunda".
TUESDAY Devuelve una string con el texto. "Terça".
WEDNESDAY Devuelve una string con el texto. "Quarta".
THURSDAY Devuelve una string con el texto. "Quinta".
FRIDAY Devuelve una string con el texto. "Sexta".
SATURDAY Devuelve una string con el texto. "Sábado".
JANUARY Devuelve una string con el texto. "Janeiro".
FEBRUARY Devuelve una string con el texto. "Fevereiro".
MARCH Devuelve una string con el texto. "Março".
APRIL Devuelve una string con el texto. "Abril".
MAY Devuelve una string con el texto. "Maio".
JUNE Devuelve una string con el texto. "Junho".
JULY Devuelve una string con el texto. "Julho".
AUGUST Devuelve una string con el texto. "Agosto".
SEPTEMBER Devuelve una string con el texto. "Setembro".
OCTUBER Devuelve una string con el texto. "Outubro".
NOVEMBER Devuelve una string con el texto. "Novembro".
DECEMBER Devuelve una string con el texto. "Dezembro".
WEAK_BATTERY Devuelve una string con el texto. "BATERIA FRACA".
ENTER_OK Devuelve una string con el texto. "OK".
VERSAO Devuelve una string con el texto. "Versão PayStore".
INICIANDO Devuelve una string con el texto. "INICIANDO...".
CARD_INVALID_APP Devuelve una string con el texto. "APLICAÇÃO | INVÁLIDA".
WIFI_SCAN Devuelve una string con el texto. "Verificando redes WiFi".
WIFI_AUTH Devuelve una string con el texto. "AUTENTICANDO | NA REDE WiFi".
WIFI_DHCP Devuelve una string con el texto. "OBTENDO ENDEREÇO IP".
PRINT Devuelve una string con el texto. "IMPRIMIR".
SERIAL_SIMCARD Devuelve una string con el texto. "NÚMERO DE SÉRIE SIMCARD".
SERIAL_POS Devuelve una string con el texto. "NÚMERO DE SÉRIE MÁQUINA".
NO_SIMCARD Devuelve una string con el texto. "SIMCARD NÃO PRESENTE".
SO_VERSION Devuelve una string con el texto. "VERSÃO DO SO".
WITH Devuelve una string con el texto. "COM".
WITH_OUT Devuelve una string con el texto. "SEM".
TERMINAL_WITHOUT_COIL Devuelve una string con el texto. "TERMINAL SEM BOBINA".
PRINT_FAILURE Devuelve una string con el texto. "FALHA NA IMPRESSÃO".
DO_YOU_WANT_TO_REPRINT Devuelve una string con el texto. "Deseja realizar a reimpressão?".
LOW_BATTERY_FOR_PRINTING Devuelve una string con el texto. "BATERIA FRACA | PARA IMPRESSÃO.".
TRANSFER_CANCELED Devuelve una string con el texto. "TRANSAÇÃO CANCELADA".
INVALID_IP Devuelve una string con el texto. "IP INVÁLIDO".
POS_PENDING_CONTINUE Devuelve una string con el texto. "EXISTEM INFORMAÇÕES |AINDA NÃO ENVIADAS. |DESEJA CONTINUAR?". )

getI18nMessageString

PhastMessage#getI18nMessageString(code)

Al crear un proyecto, dentro de la carpeta res habrá un archivo llamado I18N_PROJECT_NAME.INI. En este archivo podemos definir algunos mensajes y usar la función getI18nMessageString para obtener este mensaje. Los mensajes se pueden definir en la sección [MENSSAGES] de la siguiente manera:

[MESSAGES]
2400=Hola, Mundo

Se recomienda utilizar códigos superiores a 2399, ya que estos códigos están reservados para su uso por PhVM y sus mensajes se pueden obtener utilizando las funciones definidas en el Resumen anterior o con el paquete. TefMessage.

Parámetros
**code** - String con el código referente al mensaje
Devuelve
String con el mensaje.

Ejemplo:

use url PhastMessage "package://phast#i18n/messages.wmlsc";

function HELLO_WORLD() { return PhastMessage#getI18nMessageString("2400"); }

function test()
{
  var str = HELLO_WORLD();
  Dialogs.alert(str);
}

Salida:

Hola, Mundo

Report

package://tef#report/report.wmlsc

Tiene funciones para mostrar transacciones por fecha e imprimir detalladas y resumidas, así como imprimir la copia del cliente y del comerciante.

Sumario

Función Descripción
**getNameNetwork Nombre del facilitador
**getStreetSite Dirección de establecimiento
**getNumberSite Número de establecimiento
**getComplementsSite Complemento de la dirección del establecimiento

getNameNetwork

getNameNetwork(stNetwork)

Nombre del facilitador. ver Ejemplo

Parametros

stNetwork - list - Devuelve DbTef#createTEFCSTD

Devuelve

Ninguno

getStreetSite

getStreetSite(stSite)

Dirección de establecimiento. ver Ejemplo

Parametros

stSite - list - Devuelve DbTef#getSiteSt

Devuelve

Ninguno

getNumberSite

getNumberSite(stSite)

Número de establecimiento. ver Ejemplo

Parametros

stSite - list - r Devuelve DbTef#getSiteSt

Devuelve

Ninguno

getComplementsSite

getComplementsSite(stSite)

Complemento de la dirección del establecimiento. ver Ejemplo

Parametros

stSite - list - Devuelve DbTef#getSiteSt

Devuelve

Ninguno

Ejemplo

 use url DbTef     "package://tef#config/db_tef.wmlsc";
 use url Report    "package://tef#report/report.wmlsc";

 var db_tef     = DbTef#createTEFCSTD();
 var networkSt  = DbTef#getNetworkSt(db_tef);
 var siteSt     = DbTef#getSiteSt(db_tef);
 var network    = Report#getNameNetwork(networkSt);
 var siteStreet = Report#getStreetSite(siteSt);
 var siteNumber = Report#getNumberSite(siteSt);
 var siteCmpl   = Report#getComplementsSite(siteSt);

Rpt

package://tef#report/rpt.wmlsc

Tiene funciones para imprimir detalladas y resumidas.

Sumário

Función Descripción
PRINTER_WIDTH Devuelve el ancho de la impresora.
newLine Agrega una o más líneas vacías
addLine Agregar un elemento al informe
showPrintMessage Imprime en pantalla el mensaje "Imprimiendo..."
showProcessMessage Imprime en pantalla el mensaje "Procesando..."
performPrint Imprime el informe

Tags

Atributo Descripción
rpt#NORMAL_SIZE() Devuelve el tamaño de fuente normal.
rpt#DOUBLE_SIZE() Devuelve el doble del tamaño de fuente.
rpt#REVERSE_FONT() Devuelve fondo negro con letra blanca.

PRINTER_WIDTH

rpt#PRINTER_WIDTH(printer)

Devuelve el ancho de la impresora.

Parámetros
**printer** - Componente printer creado
Devuelve
invalid o PhType.VARIANT con el valor deseado.

newLine

rpt#newLine(report, printerWidth, lines)

Agrega una o más líneas vacías

Parâmetros
**report** - Lista donde se añadirán nuevas líneas.
**printerWidth** - Ancho de línea
**lines** - Número de líneas
Retorno
ninguno

addLine

rpt#addLine(list, line , align, tag)

Agregar un elemento al informe

Parámetros
**list** - Lista donde se añadirá el nuevo componente.
**line** - Línea que se añadirá.
**align** -Alineación de item. Printer#ALIGN_JUSTIFY(), Printer#ALIGN_CENTER, Printer#ALIGN_LEFT, Printer#ALIGN_CENTER
**tag** -  Tag para fuente. Vea [Tags](#rpt_tags)
Devuelve
ninguno

showPrintMessage

rpt#showPrintMessage( )

Imprime en pantalla el mensaje "Imprimiendo..."

Devuelve
nenhum

showProcessMessage

rpt#showProcessMessage( )

Imprime en pantalla el mensaje "Procesando..."

Devuelve
nenhum

performPrint

rpt#performPrint(printer, reports, detectKey)

Imprime el informe.

Parámetros
**printer** - Componente printer creado
**reports** - Informa para imprimir
**detectKey** - Boolean - Si debe detectado alguna clave.
Devuelve
Boolean - Falso si se pulsa alguna tecla

Service

package://phast#applet/service.wmlsc

Los servicios son funcionalidades agrupadas en ámbitos que se ejecutan de forma anónima, lo que garantiza la encapsulación funcional. El concepto es similar al modelo Cliente y Servidor, donde uno es un usuario del Servicio y el otro es el que realmente realiza el Servicio. Un punto importante en los Servicios es que ni quien los solicita ni quienes los ejecutan tienen conocimiento mutuo.

A través del concepto de Servicios, las Aplicaciones pueden publicar sus servicios para que otras Aplicaciones en la terminal puedan ejecutarlos. Los servicios deben ser registrados por cada aplicación en su inicio en el proceso de boot de la aplicación.

Por ejemplo, una aplicación financiera puede publicar servicios relacionados con pagos donde otras aplicaciones que también residen en el mismo terminal pueden solicitar que se realice un pago mediante crédito o débito.

register

Service#register(service, script, func, inputs)

Publica un servicio, indicando quién lo atenderá y la parametrización necesaria. Si el mismo servicio se publica más de una vez, solo estará vigente el último registro.

Parámetros
**service** - String que identifica de forma exclusiva el servicio. No puede ser **invalid**.

**script** - Ruta completa al PhScript que atenderá la solicitud para ejecutar el servicio. No puede ser **invalid**.

**func** - Función que dará respuesta a la solicitud para realizar el servicio. La función debe declararse como **extern**, de lo contrario PhVM no la encontrará. No puede ser **invalid**.

**inputs** - Número de parámetros que espera la función. Acepta cantidades iguales o superiores a CERO.
Devuelve
**Ninguno**

Ejemplo:

use url  Service "package://phast#applet/service.wmlsc"
extern function hello(msg)
{
  Dialogs.alert(msg);
}

...

Service#register("test.hello", "package://test/test.wmlsc", "hello", 1);

registerExt

Service#register(service, script, func, inputs, intercept)

Publica un servicio, indicando quién lo atenderá y la parametrización necesaria. Si el mismo servicio se publica más de una vez, sólo tendrá efecto el último registro.

Parâmetros
**service** - String que identifica de forma única el servicio. No puede ser **inválido**.

**script** - Ruta completa al PhScript que atenderá la solicitud para ejecutar el servicio. No puede ser **inválido**.

**func** - Rol que cumplirá con la solicitud de ejecución del servicio. La función debe declararse como **extern**, de lo contrario, PhVM no la encontrará. No puede ser **inválido**.

**inputs** - Número de parámetros que espera la función. Acepta cantidades con valor igual o superior a CERO.

**intercept** - Una función, sin parámetros y en el mismo paquete que el segundo argumento, que se llamará antes de que se ejecute el servicio.
Devolver
**Ninguna**
Ejemplo:
use url  Service "package://phast#applet/service.wmlsc"

extern function hello()
{
  Dialogs.alert(msg);
}

extern function bye(msg)
{
  Dialogs.alert(msg);
}

...

Service#registerExt("test.bye", "package://test/test.wmlsc", "bye", 1, "hello");

unregister

Service#unregister(service)

Desregistra um determinado serviço.

Parámetros
**service** - String que identifica de forma única el servicio. No puede ser **inválido**.
Devolver
**Ninguna**
Ejemplo
use url  Service "package://phast#applet/service.wmlsc"


Service#unregister("test.hello");

execute

Service#execute(service, params)

Solicita la ejecución de un servicio en particular.

Parámetros
**service** - String que identifica de forma exclusiva el servicio. No puede ser **invalid**.

**params** - Lista (PhList) que contiene los parámetros necesarios para el servicio.
Devuelve
Descripción ...

Ejemplo:

Service#execute("test.hello", ["¡¡¡Hola Mundo!!!"]

Salida:

 ¡¡¡Hola Mundo!!!

countArguments

Service#countArguments(service)

Cuenta el número de parámetros de un servicio determinado.

Parámetros
**service** - String que identifica de forma única el servicio. No puede ser **inválido**.
Devolver
**Integer**
Ejemplo
use url  Service "package://phast#applet/service.wmlsc"


var len = Service#countArguments("test.hello");
Dialogs.alert(len);
Salida
 1

isAvailable

Service#isAvailable(service)

Comprueba si un determinado servicio está disponible.

Parámetros
**service** - String que identifica de forma única el servicio. No puede ser **inválido**.
Devolver
**Boolean**
Ejemplo
use url  Service "package://phast#applet/service.wmlsc"


var isAvaiable = Service#isAvailable("test.hello");
Dialogs.alert(isAvaiable);
Salida
 true

TefMessage

package://tef#i18n/message.wmlsc

Este módulo proporciona funciones con mensajes predefinidos.

Sumario

Función Descripción
CANCEL Devuelve una string con el texto. "CANCELA".
ENTER Devuelve una string con el texto. "ENTRA".
CONFIRM Devuelve una string con el texto. "CONFIRMA".
ITEM_NOT_FOUND Devuelve una string con el texto. "ITEM NAO ENCONTRADO".
OPERATION_CANCELED Devuelve una string con el texto. "OPERACAO|CANCELADA".
CONFIRM_EMV Devuelve una string con el texto. "Confirma transacao?".
MN_LOJISTA Devuelve una string con el texto. "LOJISTA".
MN_TECNICO Devuelve una string con el texto. "TECNICO".
R_TODOS_ESTABELEC Devuelve una string con el texto. "TODOS SUBESTABEL.".
R_ESPEC_ESTABELEC Devuelve una string con el texto. "SUBEST. ESPECIFICO".
R_DETAILED_REPORT Devuelve una string con el texto. "RELATORIO DETALHADO".
R_RESUME_REPORT Devuelve una string con el texto. "SUBEST. ESPECIFICO".
R_REPRINT Devuelve una string con el texto. "Reimpressao".
R_CREDIT Devuelve una string con el texto. "CREDITO A VISTA".
R_DEBIT Devuelve una string con el texto. "DEBITO A VISTA".
R_CREDIT_PARCELLED_EC Devuelve una string con el texto. "CREDITO PARCELADO|SEM JUROS".
R_CREDIT_PARCELLED_ADM Devuelve una string con el texto. "CREDITO PARCELADO|COM JUROS".
R_REFUND Devuelve una string con el texto. "CANCELAMENTO".
R_TOTAL_EC Devuelve una string con el texto. "TOTAL POR EC".
R_BALANCE Devuelve una string con el texto. "SALDO".
R_WITHDRAWAL Devuelve una string con el texto. "SAQUE".
R_CARD_PAYMENT Devuelve una string con el texto. "PAGAMENTO CARTAO".
R_CARD_UNLOCK Devuelve una string con el texto. "DESBLOQUEIO".
R_NO_REPORT Devuelve una string con el texto. "NENHUM PAGAMENTO|ENCONTRADO".
INIT_TABLE_UPDATE Devuelve una string con el texto. "Atualizando|tabelas...".
INIT_FINISH_OK Devuelve una string con el texto. "Inicializacao|concluida".
INIT_FINISH_ERROR Devuelve una string con el texto. "FALHA NA|ATUALIZACAO".
TRNSM_FINISH_OK Devuelve una string con el texto. "Transmissao|concluida".
TRNSM_FINISH_ERROR Devuelve una string con el texto. "FALHA NA|TRANSMISSAO".
TITLE_ASK_PASSWORD Devuelve una string con el texto. "DIGITE A SENHA".
LABEL_INFO Devuelve una string con el texto. "INFORMACOES".
MSG_INVALID_PASSWORD Devuelve una string con el texto. "SENHA INVALIDA".
FC_CHOOSE_FUNCTION Devuelve una string con el texto. "DIGITE A FUNCAO".
FC_INVALID_FUNCTION Devuelve una string con el texto. "Funcao inexistente".
FC_INACTIVE_FUNCTION Devuelve una string con el texto. "Funcao inativa".
CARD_TITLE Devuelve una string con el texto. "CARTAO".
CARD_HINT Devuelve una string con el texto. "INSIRA OU PASE|O CARTAO".
CARD_NUMBER Devuelve una string con el texto. "NUMERO DO CARTAO inativa".
R_REPRINT_SALE Devuelve una string con el texto. "V".
R_REPRINT_REFUND Devuelve una string con el texto. "C".
R_DATE Devuelve una string con el texto. "DATA".
TEF Devuelve una string con el texto. "TEF".
MAIN_SITE Devuelve una string con el texto. "EC Pincipal".
SUBSITE Devuelve una string con el texto. "Sub EC".
NETWORK Devuelve una string con el texto. "REDE CAPTURA".
ACQUIRES Devuelve una string con el texto. "Adquirentes".
PHAST Devuelve una string con el texto. "PHAST".
NOME Devuelve una string con el texto. "NOME".
OUTRO Devuelve una string con el texto. "OUTRO".
keys Devuelve una string con el texto. "Chaves".
unknow Devuelve una string con el texto. "Desconhecida".
findingKeys Devuelve una string con el texto. "Localizando|Chaves...".
VIA Devuelve una string con el texto. "VIA".
VIA_CLIENT Devuelve una string con el texto. "CLIENTE".
VIA_SITE Devuelve una string con el texto. "ESTABELECIMENTO".
MAG_FALLBACK_ENABLED Devuelve una string con el texto. "|TENTE PASSAR A|TARJA MAGNÉTICA".
MANUAL_FALLBACK_ENABLED Devuelve una string con el texto. "|TENTE DIGITAR O|NÚMERO DO CARTÃO".
R_PREAUTHORIZATION Devuelve una string con el texto. "PRÉ AUTORIZAÇÃO".
R_PREAUTHORIZATION_CONF Devuelve una string con el texto. "CONFIRM. PRÉ AUT.".
R_TOTAL Devuelve una string con el texto. "TOTAL.".
R_ESTAB Devuelve una string con el texto. "ESTAB".
R_TERMINAL Devuelve una string con el texto. "TERMINAL".
R_EMITIDO_EM Devuelve una string con el texto. "EMITIDO EM".
R_QTD Devuelve una string con el texto. "QTD".
R_CV Devuelve una string con el texto. "CV".
R_EC Devuelve una string con el texto. "EC".
R_AUTO Devuelve una string con el texto. "AUTO".
R_DATE_MASK Devuelve una string con el texto. "".
TYPE Devuelve una string con el texto. "TIPO".
TEST_CARD_CHIP Devuelve una string con el texto. "INSIRA CARTÃO|COM CHIP NA|LEITORA".
TEST_CARD_MAG Devuelve una string con el texto. "PASSE O CARTÃO|PELA LEITORA DE|TARJA".
TEST_CARD_CLESS Devuelve una string con el texto. "APROXIME CARTÃO|SEM CONTATO".
TEST_ERROR_READING Devuelve una string con el texto. "ERRO DE LEITURA".
TEST_ERROR_TIMEOUT Devuelve una string con el texto. "TEMPO EXCEDIDO".
TEST_OK Devuelve una string con el texto. "*** TESTE OK ***".
LABEL_TESTS Devuelve una string con el texto. "TESTES".
PRINTER_TEST Devuelve una string con el texto. "*** TESTE DE IMPRESSAO ***".
KEY_PRESS Devuelve una string con el texto. "PRESSIONE TECLAS".
KEY Devuelve una string con el texto. "TECLA:".
KEY_MENU Devuelve una string con el texto. "MENU".
KEY_INIT Devuelve una string con el texto. "INICIALIZA".
KEY_REPRINT Devuelve una string con el texto. "REIMPRIME".
KEY_FEED Devuelve una string con el texto. "AVANÇA PAPEL".
KEY_ENTER Devuelve una string con el texto. "ENTRA".
KEY_FUNC Devuelve una string con el texto. "FUNC".
KEY_CANCEL Devuelve una string con el texto. "CANCELA".
KEY_CLEAR Devuelve una string con el texto. "LIMPA".
KEY_KEYUP Devuelve una string con el texto. "CIMA".
KEY_KEYDOWN Devuelve una string con el texto. "BAIXO".
READER_TEST Devuelve una string con el texto. "LEITORA CARTÃO".
COMUNICATION_TEST Devuelve una string con el texto. "Teste de Comunicação".
PRINTER_TEST_LABEL Devuelve una string con el texto. "TESTE DE IMPRESSORA".
DISPLAY_TEST Devuelve una string con el texto. "TESTE DE DISPLAY".
KEYBOARD_TEST Devuelve una string con el texto. "TESTE DE TECLADO".
KEYS_TEST Devuelve una string con el texto. "Teste de Chaves".
READER_CHIP_TEST Devuelve una string con el texto. "LEITORA DE CHIP".
READER_MAG_TEST Devuelve una string con el texto. "TESTE DE LEITORA DE CARTÃO".
READER_CLESS_TEST Devuelve una string con el texto. "LEITORA DE|CARTÃO SEM CONTATO".
PTR_EQUIPMENT_TEST Devuelve una string con el texto. "TESTE DE EQUIPAMENTO".
PTR_READER_TEST Devuelve una string con el texto. "LEITORA".
PTR_COMM_TEST Devuelve una string con el texto. "COMUNICAÇÃO".
PTR_PRINTER_TEST Devuelve una string con el texto. "IMPRESSORA".
PTR_DISPLAY_TEST Devuelve una string con el texto. "DISPLAY".
PTR_KEYBOARD_TEST Devuelve una string con el texto. "TECLADO".
PTR_KEYS_TEST Devuelve una string con el texto. "CHAVES".
PTR_TEST_OK Devuelve una string con el texto. "OK".
PTR_TEST_NOT_OK Devuelve una string con el texto. "NÃO OK".
ASK_PRINT_REPORT Devuelve una string con el texto. "DESEJA IMPRIMIR O|RELATÓRIO DETALHADO?".
PRINT_SUMMARY Devuelve una string con el texto. "RESUMIDO".
PRINT_DETAILED Devuelve una string con el texto. "DETALHADO".
REPORTS Devuelve una string con el texto. "RELATÓRIOS".
OPERATION_NOT_PERFORMED Devuelve una string con el texto. "OPERAÇÃO|NÃO EFETUADA".
OFFLINE_DATA_NOT_SEND Devuelve una string con el texto. "EXISTEM INFORMAÇÕES|NÃO ENVIADAS".
CARD_FMT_MANUAL Devuelve una string con el texto. "MAN".
CARD_FMT_TARJA Devuelve una string con el texto. "MAG".
CARD_FMT_CHIP Devuelve una string con el texto. "CHIP".
CARD_FMT_CONTACTLESS Devuelve una string con el texto. "LESS".
EXECUTE_ALL_TESTS Devuelve una string con el texto. "EXECUTAR TODOS".
ERROR_PRINTER Devuelve una string con el texto. "ERRO CONECTANDO A|IMPRESSORA".
READER_CLESS_MSG Devuelve una string con el texto. "APROXIME,|INSIRA OU PASSE|CARTÃO".
READER_MSG Devuelve una string con el texto. "INSIRA OU PASSE|O CARTÃO".
FINISH_TEST Devuelve una string con el texto. "TESTE TERMINAL|CONCLUÍDO".
READER_SMART_TEST Devuelve una string con el texto. "TESTE DE CHIP CONTATO".
READER_CHIP_CLESS Devuelve una string con el texto. "TESTE DE CHIP SEM CONTATO".
TOUCH_TEST_ERROR Devuelve una string con el texto. "TOQUE DE TELA|SEM SUCESSO".
TOUCH_TEST Devuelve una string con el texto. "TESTE DE TOQUE|DE TELA".
TOUCH_DISPLAY_TEST Devuelve una string con el texto. "TESTE DE TOQUE DE DISPLAY".
PRINT_MSG Devuelve una string con el texto. "Imprimir".
R_DEBIT_PRE_DATED Devuelve una string con el texto. "DEBITO PRÉ-DATADO".
R_VOUCHER_FOOD Devuelve una string con el texto. "VALE ALIMENTAÇÃO".
R_VOUCHER_MEAL Devuelve una string con el texto. "VALE REFEIÇÃO".
CARD_HINT_ALL Devuelve una string con el texto. "Aproxime,|Insira ou passe|o cartão##Aproxime| ou Insira|o cartão##Aproxime| ou passe|o cartão##Insira ou passe|o cartão##Aproxime|o cartão##Insira|o cartão##Passe|o Cartão".
NUM_SER_TERM Devuelve una string con el texto. "NUM SERIE TERM".
NUM_SER_SIMCARD Devuelve una string con el texto. "NUM SERIE SIMCARD".
TOTAL_RAM Devuelve una string con el texto. "MEMORIA TOTAL".
AVAILABLE_RAM Devuelve una string con el texto. "MEMORIA DISPONÍVEL".
PRODUCT Devuelve una string con el texto. "PRODUTO".
SO Devuelve una string con el texto. "SISTEMA OPERACIONAL".
ORIGIN_DATE Devuelve una string con el texto. "DIGITE TRANS ORIG:".
DOC_NUMBER Devuelve una string con el texto. "NÚMERO DO DOC:".
OPERATION_NOT_ALLOWED Devuelve una string con el texto. "OPERAÇÃO NÃO PERMITIDA".
TRANSACTION_NOT_FOUND Devuelve una string con el texto. "TRANSAÇÃO NÃO|LOCALIZADA NO LOG".
INVALID_DATE Devuelve una string con el texto. "DATA INVÁLIDA".
VIA_TODAS Devuelve una string con el texto. "TODOS".
REPRINT_OK Devuelve una string con el texto. "Reimpressão OK".
R_VOUCHER Devuelve una string con el texto. "VOUCHER".
R_PREAUTH_SUBST Devuelve una string con el texto. "PRE AUT. SUBST.".
R_PREAUTH_PARCELLED_EC Devuelve una string con el texto. "PRÉ AUT SEM JUROS".
R_PREAUTH_PARCELLED_ADM Devuelve una string con el texto. "PRÉ AUT COM JUROS".
LAST_TRANSACTION_APPROVED Devuelve una string con el texto. "ÚLTIMA TRANSAÇÃO REALIZADA".
INVALID_VALUE_ERROR Devuelve una string que indica que el valor pasado no es válido.
INVALID_PARCELL_ERROR Devuelve una string que indica que el valor pasado no es válido.
INVALID_PARCELL_VALUE_ERROR Devuelve una string que indica que el paquete recibido no es válido.
INVALID_PARCELL_VALUE_LOWER_ERROR Devuelve una string que indica que el valor recibido no puede ser menor que min.
INVALID_PARCELL_VALUE_HIGHER_ERROR Devuelve una string que indica que el valor recibido no puede ser mayor que max.
getAsStringCurrency Recibe el valor y el símbolo monetario como parámetro, devuelve la string con el valor monetario.

INVALID_VALUE_ERROR

TefMessage#INVALID_VALUE_ERROR(cur, min, max, value)

Devuelve una string que indica que el valor pasado no es válido, es decir, no está entre el valor mínimo y máximo.

Parámetros
**cur** - String que contiene la moneda de formato

**min** - String que contiene el valor mínimo

**max** - String que contiene el valor máximo

**value** - String que contiene el valor recibido
Devuelve
String que indica que el valor pasado no es válido.

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var min   = "200";
var max   = "800";
var value = "1000";
var cur   = "R$";

var str = TefMessage#INVALID_VALUE_ERROR(cur, min, max, value);
Dialogs.alert(str);

Salida:

VALOR NO VÁLIDO | (BRL 10,00) | | DEBE ESTAR ENTRE R$ 2,00 Y R$ 8,00

INVALID_PARCELL_ERROR

TefMessage#INVALID_PARCELL_ERROR(min, max, value)

Devuelve una string que indica que el paquete recibido no es válido, es decir, no se encuentra entre el paquete mínimo y máximo.

Parámetros
**min** - String que contiene la porción mínima

**max** - String que contiene la porción máxima

**value** - String que contiene la porción recebido
Devuelve
String que indica que el paquete recibido no es válido.

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var min   = "2";
var max   = "12";
var value = "16";

var str = TefMessage#INVALID_PARCELL_ERROR(min, max, value);
Dialogs.alert(str);

Salida:

CANTIDAD NO VÁLIDA | (16) || DEBE ESTAR ENTRE | 2 Y 12

INVALID_PARCELL_VALUE_ERROR

TefMessage#INVALID_PARCELL_VALUE_ERROR(cur, min, max, value)

Devuelve una string que indica que el paquete pasado no es válido, es decir, no se encuentra entre el paquete mínimo y máximo.

Parámetros
**cur** - String que contiene la moneda de formato

**min** - String que contiene el valor de la cuota mínima

**max** - String que contiene el valor de la cuota máxima

**value** - String que contiene el valor de la cuota recibida
Devuelve
String que indica que el valor del paquete transferido no es válido.

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var cur   = "R$";
var min   = "2000";
var max   = "20000";
var value = "1000";

var str = TefMessage#INVALID_PARCELL_VALUE_ERROR(cur, min, max, value);
Dialogs.alert(str);

Salida:

 VALOR DE|CUOTA NO VÁLIDO |(R$ 10,00)|| DEBE ESTAR ENTRE R$ 20,00 Y R$ 200,00

INVALID_PARCELL_VALUE_LOWER_ERROR

TefMessage#INVALID_PARCELL_VALUE_LOWER_ERROR(cur, min, max, value)

Devolverá una string que indica que el valor pasado debe ser mayor que min

Parámetros
**cur** - String que contiene la moneda de formato

**min** - String que contiene el valor mínimo de la cuota

**max** - String que contiene el valor máximo de la cuota

**value** - String que contiene el valor de la cuota recibida
Devuelve
String que indica que el valor de la cuota no puede ser menor que el último valor mínimo

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var cur   = "R$";
var min   = "2000";
var max   = "20000";
var value = "1000";

var str = TefMessage#INVALID_PARCELL_VALUE_LOWER_ERROR(cur, min, max, value);
Dialogs.alert(str);

Salida:

VALOR DE|CUOTA NO VÁLIDO |(R$ 10,00)|| DEBE SER MAYOR QUE| R$ 20,00

INVALID_PARCELL_VALUE_HIGHER_ERROR

TefMessage#INVALID_PARCELL_VALUE_HIGHER_ERROR(cur, min, max, value)

Devolverá una string que indica que el valor pasado debe ser menor que max.

Parámetros
**cur** - String que contiene la moneda de formato

**min** - String que contiene el valor mínimo de la cuota

**max** - String que contiene el valor máximo de la cuota

**value** - String que contiene el valor de la cuota recibida
Devuelve
String que indica que el valor de la cuota no puede ser mayor que el valor máximo pasado

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var cur   = "R$";
var min   = "2000";
var max   = "20000";
var value = "25000";

var str = TefMessage#INVALID_PARCELL_VALUE_HIGHER_ERROR(cur, min, max, value);
Dialogs.alert(str);

Salida:

VALOR DE|CUOTA NO VÁLIDO |(R$ 250,00)|| DEBE SER MENOR QUE | R$ 200,00

getAsStringCurrency

TefMessage#getAsStringCurrent(value, currency)

Devuelve el valor pasado en formato con la moneda pasada

Parámetros
**value** - String que contiene el valor que se va a formatear

**currency** - String que contiene la moneda de formato
Devuelve
String formateada

Ejemplo:

url TefMessage    "package://tef#i18n/message.wmlsc"

var value   = "2000";
var currenc = "R$";

var str = TefMessage#getAsStringCurrency(value, currenc);
Dialogs.alert(str);

Salida:

R$ 20,00

Util

package://paystore#util/util.wmlsc

Este módulo proporciona funciones de utilidad

Sumario

Función Descripción
**addListToList Agregar contenido de una lista a otra lista.
**createListSize Crea una lista con el tamaño anterior.
**getFileNameFromPath. Obtenga el nombre del archivo dada su ruta.
**getNationalId Devuelve el identificador de la ec.
**getSerialNumber Devuelve el número de serie de la terminal.
**getPinpadSerialNumber Devuelve el número de serie pinpad.
**configURL Configurar la URL de comunicación de PayStore.
**getAppNameFromInfo Devuelve el nombre y la versión de la aplicación.
**getTerminalId Devuelve el id de terminal.
**getSiteId Devuelve el id de establecimento.

addListToList

Util#addListToList(listTo, listFrom)

Agregar contenido de una lista a otra lista.

Parámetros
**listTo** - Lista que recibirá los nuevos elementos.

**listFrom** - Lista que he visto proporcionar los elementos.
Devuelve
No tiene retorno.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var listTo = [1, 2, 3];
var listFrom = [4, 5, 6];

Util#addListToList(listTo, listFrom);
Dialogs.alert(String.toString(PhList.count(listTo)));

Salida:

6

creatListSize

Util#createListSize(size)

Crea una lista con el tamaño pasado cuyos elementos serán invalid.

Parámetros
**size** - Número entero que indica el tamaño de la lista que desea crear.
Devuelve
Devuelve un PhList de tamaño size

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var lista = Util#createListSize(4);

Dialogs.alert(String.toString(PhList.count(lista)));

Salida:

4

getFileNameFromPath

Util#getFileNameFromPath(path)

Devuelve el nombre del archivo dado la ruta

Parámetros
**path** - Ruta al archivo
Devuelve
Devuelve una string con el nombre del archivo.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var p = "package://utils/utils.wmlsc";
var fileName = Util#getFileNameFromPath(p);
Dialogs.alert(String.toString(fileName));

Salida:

utils

getNationalId

Util#getNationalId()

Devuelve el identificador de la ec

Devuelve
Devuelve una string con el identificador de la terminal.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var id = Util#getNationalId();
Dialogs.alert(String.toString(id));

Salida:

12345678912345

getSerialNumber

Util#getSerialNumber()

Devuelve el número de serie de la terminal.

Devuelve
Devuelve una string con el serial de la terminal.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var serial = Util#getSerialNumber();
Dialogs.alert(String.toString(serial));

Salida:

1234567890

getPinpadSerialNumber

Util#getPinpadSerialNumber()

Devuelve el número de serie pinpad

Devuelve
Devuelve una cadena con el serial pinpad

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var serial = Util#getPinpadSerialNumber();
Dialogs.alert(String.toString(serial));

Salida:

1234567890

configURL

Util#configURL()

Le pedirá al operador la URL de comunicación con el paystore.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

Util#configURL();

getAppNameFromInfo

Util#getAppNameFromInfo(info)

Obtendrá el nombre y la versión de la aplicación de model Info

Parametros

info - PhList(model) - Modelo de tipo Info

Devuelve
Devuelve una string con el nombre y la versión de la aplicación.

Ejemplo:

use url Util  "package://paystore#util/util.wmlsc";

var info = Info#create();
Info#setName(info, "app name");
Info#setFileVersionName(info, "1.0.0");
var name = Util#getAppNameFromInfo(info);
Dialogs.alert(name);

Salida:

app name (1.0.0)

getTerminalId

Util#getTerminalId(PhASTCfg)

Devuelve el id de terminal

Parametros

PhASTCfg - PhStruct - Struct

Devuelve
Devuelve el id de terminal

Ejemplo:

use url Util           "package://paystore#util/util.wmlsc";
use url PhastConfig   "package://phast#utils/local_config.wmlsc";

var PhASTCfg = PhastConfig#getCfgData();
var id = Util#getSiteId(PhASTCfg);
Dialogs.alert(id);

Salida:

DEVSAMPLE

getSiteId

Util#getSIteId(PhASTCfg)

Devuelve el id de establecimento

Parametros

PhASTCfg - PhStruct - Struct

Devuelve
String con el id del establecimiento

Ejemplo:

use url Util          "package://paystore#util/util.wmlsc";
use url PhastConfig   "package://phast#utils/local_config.wmlsc";

var PhASTCfg = PhastConfig#getCfgData();
var id = Util#getSiteId(PhASTCfg);
Dialogs.alert(id);

Salida:

000123

Validator

package://phast#utils/validator.wmlsc

Este módulo proporciona funciones para varias validaciones como cpf, cnpj, email, etc.

validateCpf

Validator#validateCpf(cpf)

Ejecuta la validación del cpf informado.

Parámetros
**cpf** - cpf que desea validar sin puntos ni guiones.
Devuelve
**true** si el CPF ingresado es un CPF válido. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var cpf = "00000000000";
if (Val#validateCpf(cpf))
{
 Message#showMessage("CPF válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("CPF no válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

CPF no válido

validateDate

Validator#validateDate(date)

Verifique si la fecha ingresada es válida.

Parámetros
**date** - string que contiene una fecha en el formato "DDMMYYYY"
Devuelve
**true** si la fecha ingresada es una fecha válida. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

function testDate(date)
{
 if (Val#validateDate(date))
 {
   Message#showMessage("Fecha válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
 }
 else
 {
   Message#showMessage("Fecha no válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

 }
}

extern function valid()
{
 var date = "12062017";
 testDate(date);
 date     = "12152017";
 testDate(date);

}

Salida:

Fecha válida
Fecha no válida

validateTime

Validator#validateTime(time)

Comprueba si la hora introducido es válido.

Parámetros
**date** - cadena que contiene una hora en el formato "hhmmss"
Devuelve
**true** si la hora ingresada es una hora válida. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

function testTime(time)
{
 if (Val#validateTime(time))
 {
   Message#showMessage("Hora válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
 }
 else
 {
   Message#showMessage("Hora no válida", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

 }
}

extern function valid()
{
 var time = "104400";
 testTime(time);
 time     = "304400";
 testTime(time);

}

Salida:

Hora válida
Hora no válida

validateDateTime

Validator#validateDateTime(dateTime)

Comprueba si la fecha y hora informadas son válidas.

Parámetros
**dateTime** - cadena que contiene una fecha y hora en el formato "DDMMYYYYhhmmss"
Devuelve
**true** si la fecha y hora informadas son fecha y hora válidas. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

function testDateTime(dateTime)
{
 if (Val#validateTime(dateTime))
 {
   Message#showMessage("Fecha y hora válidas", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
 }
 else
 {
   Message#showMessage("Fecha y hora no válidas", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());

 }
}

extern function valid()
{
 var dateTime = "12062017104400";
 testDateTime(dateTime);
 dateTime     = "12062017304400";
 testDateTime(dateTime);

}

Salida:

Fecha y hora válidas
Fecha y hora no válidas

validateEmail

Validator#validateEmail(email)

Valida el email ingresado. La string con el email debe tener el formato [@.*]. Deben introducirse al menos 5 caracteres. Las strings representadas por la máscara "*" son obligatorias. Los caracteres "##" y ";" no son válidos.

Parámetros
**email** - String con el email que se va a validar.
Devuelve
**true** si el email informado es válido. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var email = "teste@phoebus.com.br";
if (Val#validateEmail(email))
{
 Message#showMessage("email válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("email no válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

email válido

validateFullName

Validator#validateFullName(fullName)

Validar nombre y sobrenombre

Parámetros
**fullName** - cadena que contiene el nombre y sobrenombre para validar. El formato debe ser [* *] y debe contener al menos 3 caracteres.
Devuelve
**true** si el nombre dado es válido. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var nome = "Joao Batista";
if (Val#validateFullName(nome))
{
 Message#showMessage("nombre válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("nombre no válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

nombre válido

validateOnKeyPressName

Validator#validateOnKeyPressName(key, fullName)

Valida un nombre a partir de la tecla presionada y el nombre en sí. Esta función es útil para forzar la escritura a aceptar solo claves válidas para un nombre.

Parámetros
**key** - tecla presionada.

**fullName** - nombre para validar.
Devuelve
La tecla en sí si el nombre es válido y la tecla es una letra o en blanco. De lo contrario, se devolverá **PhKeyBoard.KEY_NONE**

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Display    "package://phast#utils/display.wmlsc";

var key = PhKeyBoard.KEY_NONE;
var nome = "nombre: ";
Display#showMessageAndTitle(invalid, nome);
while (key != PhKeyBoard.KEY_ENTER)
{
 key = PhKeyBoard.getKey(true);
 if (Val#validateOnKeyPressName(key, nome))
 {
   nome += String.getChar(key);
   Display#showMessageAndTitle("Salida", nome);
 }
}

Salida:

nombre: nombre escrito

validateOnKeyPressEmail

Validator#validateOnKeyPressEmail(key)

Valida un email desde la tecla presionada. Esta función convierte las teclas válidas en email de acuerdo con la terminal en el que se ejecuta la aplicación.

Parámetros
**key** - tecla presionada.
Devuelve
La tecla convertida según la terminal. o **PhKeyBoard.KEY_NONE** si no hay conversión.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";
use url Display    "package://phast#utils/display.wmlsc";

var key = PhKeyBoard.KEY_NONE;
var email = "email: ";
Display#showMessageAndTitle(invalid, email);
while (key != PhKeyBoard.KEY_ENTER)
{
 key = PhKeyBoard.getKey(true);
 if (Val#validateOnKeyPressEmail(key))
 {
   email += String.getChar(key);
   Display#showMessageAndTitle("Salida", email);
 }
}

Salida:

email: email escrito

validateCEP

Validator#validateCEP(cep)

Verifica si el código postal informado es válido.

Parámetros
**cep** - string con el código postal a validar, sin formato.
Devuelve
**true** si el código postal informado es válido. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var cep = "00000000";
if (Val#validateCEP(cep))
{
 Message#showMessage("CEP válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("CEP no válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

CEP no válido

validateFutureDate

Validator#validateFutureDate(date)

Comprueba si la fecha ingresada es futura.

Parámetros
**date** - string con la fecha a comprobar. La fecha debe estar en el formato "DDMMYYYY"
Devuelve
**true** si la fecha informada es futura. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var date = "13062017";
if (Val#validateFutureDate(date))
{
 Message#showMessage("la fecha informada es futura", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("la fecha informada no es futura", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

la fecha informada es futura

validateCNPJ

Validator#validateCNPJ(cnpj)

Comprueba si el cnpj informado es válido.

Parámetros
**cnpj** - string con el cnpj para ser validado. El cnpj informado debe estar sin formato (solo con números, sin puntos y guiones).
Devuelve
**true** si el cnpj informado es válido. **false** de lo contrario.

Ejemplo:

use url Val        "package://phast#utils/validator.wmlsc";
use url Message    "package://tefui#ui/message.wmlsc";

var cnpj = "12345678901234";
if (Val#validateCNPJ(cnpj))
{
 Message#showMessage("cnpj es válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}
else
{
 Message#showMessage("cnpj no es válido", Message#DELAY_ALERT(), Message#BEEP_MESSAGE());
}

Salida:

el cnpj no es válido