Esta documentación está en fase de desarrollo y puede contener errores.

Funciones de texto

Combinar, buscar, trocear y formatear texto en DinaScript, con diccionarios en memoria, construcción de JSON y validación de NIF.

Funciones del espacio F. para trabajar con texto: combinar valores, buscar dentro de una cadena, trocearla por un separador, formatear números como texto y montar estructuras JSON. Las convenciones comunes (tipos de datos, valores sí/no, contextos) están en el índice de funciones.

Combinar y transformar

FunciónParámetrosDevuelveQué hace
ConcatConcat6(texto1, …, textoN)TextoUne de 1 a 6 valores de texto en uno.
Replace(cadena, búsqueda, nuevoValor)TextoSustituye todas las apariciones de un texto por otro.
ToUppers(texto)TextoPasa a mayúsculas.
ToLower(texto)TextoPasa a minúsculas.
Length(texto)EnteroNúmero de caracteres.
Substring(texto, inicio, longitud)TextoExtrae un trozo desde una posición.
RemoveStart / RemoveEnd(cadena, cantidad)TextoQuita N caracteres del inicio o del final.
PadLeft / PadRight(texto, cantidad, relleno, cortar)TextoRellena hasta una longitud fija por la izquierda o la derecha. El último parámetro corta el texto si ya es más largo.
txt codigo = F.PadLeft("7", 5, "0", false)
@ codigo vale "00007"

txt etiqueta = F.Concat3("Pedido ", codigo, " confirmado")

Buscar dentro de un texto

Las tres devuelven un entero: 1 si se cumple, 0 si no. La comparación ignora mayúsculas y acentos.

FunciónParámetrosDevuelveQué hace
Contains(cadena, búsqueda)Entero (1/0)La cadena contiene el texto buscado.
StartsWith(cadena, búsqueda)Entero (1/0)La cadena empieza por el texto buscado.
EndsWith(cadena, búsqueda)Entero (1/0)La cadena termina en el texto buscado.
¿F.Contains(v.email, "@") = 0 ? v.error = "El email no es válido"

Trocear por separador

Parten la cadena por un separador y devuelven o eliminan segmentos. A ignorar salta los primeros N trozos; A recibir limita cuántos coges.

FunciónParámetrosDevuelveQué hace
GetFirstPart(valor, separador, aIgnorar, aRecibir)TextoCoge los primeros segmentos tras partir la cadena.
GetLastPart(valor, separador, aIgnorar, aRecibir)TextoCoge los últimos segmentos.
RemoveFirstPart(valor, separador, aEliminar)TextoQuita los primeros N segmentos.
RemoveLastPart(valor, separador, aEliminar)TextoQuita los últimos N segmentos.
txt dominio = F.GetLastPart("ana@dinaup.com", "@", 0, 1)
@ dominio vale "dinaup.com"

Formatear números como texto

Aplican el formato de presentación de tu cuenta: separadores de miles, símbolo de moneda, signo de porcentaje.

FunciónParámetrosDevuelveQué hace
FormatMoney(importe)TextoImporte monetario: 1.234,56 €.
FormatNumeric(importe)TextoNúmero con separadores: 1.234,56.
FormatPercentage(importe)TextoPorcentaje: 25%.
FormatNumericByRole(valor, rol)TextoFormatea según el formato del rol de campo indicado.
FormatTime(minutos)TextoMinutos como hora: 901:30.
WriteTime(minutos)TextoMinutos como texto legible por personas.

Diccionarios en memoria

Pares clave-valor para acumular resultados antes de exportarlos. Dos sabores: texto (DicT_) y numérico (DicN_). _New devuelve la referencia del diccionario, que pasas al resto de funciones.

FunciónParámetrosDevuelveQué hace
DicT_New / DicN_New()ReferenciaCrea el diccionario.
DicT_Add / DicN_Add(dic, clave, valor)Añade o actualiza una clave.
DicT_Get / DicN_Get(dic, clave, defecto)Texto / DecimalLee una clave; si no existe, devuelve el valor por defecto.
DicT_ContainsKey / DicN_ContainsKey(dic, clave)Entero (1/0)La clave existe.
DicT_Count / DicN_Count(dic)EnteroNúmero de entradas.
DicT_RemoveItem / DicN_RemoveItem(dic, clave)Elimina una clave.
DicT_Clear / DicN_Clear(dic)Vacía el diccionario.
DicT_ToJson / DicN_ToJson(dic)TextoVuelca el diccionario a JSON.
num dic = F.DicN_New()
F.DicN_Add(dic, "enero", 1200)
F.DicN_Add(dic, "febrero", 1550)
txt json = F.DicN_ToJson(dic)

Construir JSON

Para montar un JSON a mano con objetos anidados, sin pelearte con comillas. Abres un documento, vas asignando claves tipadas y lo lees al final.

FunciónParámetrosDevuelveQué hace
Json_DocIni(keyword)Abre un documento JSON identificado por keyword.
Json_ObjectIni(clave)Abre un objeto anidado. Con clave vacía, es el objeto raíz.
Json_SetValueText(clave, valor)Asigna un valor de texto.
Json_SetValueN(clave, valor)Asigna un valor numérico.
Json_SetValueB(clave, valor)Asigna un valor sí/no.
Json_SetValueJson(clave, json)Anida un JSON ya construido como valor.
Json_ObjectEnd()Cierra el objeto actual.
Json_DocEnd()Cierra el documento.
Json_ReadDoc(keyword)TextoDevuelve el JSON generado.
F.Json_DocIni("respuesta")
F.Json_ObjectIni("")
F.Json_SetValueText("estado", "ok")
F.Json_SetValueN("total", 1250.50)
F.Json_ObjectEnd()
F.Json_DocEnd()
txt json = F.Json_ReadDoc("respuesta")

NIF españoles

FunciónParámetrosDevuelveQué hace
ValidateNIF(nif)Entero (1/0)El NIF tiene un formato válido.
NIFIsPersonal(nif)Entero (1/0)El NIF es de persona física.
DetectTypeNIF(nif)TextoNombre del tipo de NIF.
IdentifyIDTypeNIF(nif)EnteroCódigo del tipo de identificación.

Utilidades web

FunciónParámetrosDevuelveQué hace
ToFriendlyUrl(valor)TextoConvierte un texto en slug para URL, sin espacios ni caracteres especiales.
JSEncode(texto)TextoEscapa un texto para incrustarlo en JavaScript.

Índice de funcionesEspacio de nombres S. (Schema)

On this page