Sistema de Gestión de Negocios "Hexa"

Base de datos de conocimiento.

Doc. Ref. 32003
Título: Los métodos fpc en Hexa V9
Autor: Soltec
Última actualización: 17/08/2018
#utilidades #funciones #procedimientos #comunes


Los métodos fpc en Hexa V.9

El objeto fpc, de la clase cFPC, reúne las funciones y procedimientos comunes de Hexa: construcción de SQL, conversiones, fechas, textos, archivos, comunicaciones, JSON y documentos PDF. Muchos de estos métodos se utilizan desde Hexa-Scripts y desde las demás clases. Cada sobrecarga se describe por separado.

En los métodos con Condicion, Orden y Opciones, el criterio SQL se indica sin WHERE y el orden sin ORDER BY, salvo las particularidades descritas en cada caso. Opciones contiene valores con el formato Nombre=Valor; los textos con espacios se delimitan con comillas simples. Una condición vacía puede abarcar todos los registros. Los ejemplos utilizan datos ilustrativos.

Los métodos disponibles son los siguientes:

  • fpc.SQLWO(Condicion, Orden, Tabla)

    Construye las cláusulas WHERE y ORDER BY solo cuando hay criterio u orden. Convierte criterios JSON de Hexa mediante JSON2SQL. El parámetro opcional Tabla, vacío por defecto, permite anteponer la expresión de tabla y tratar su GROUP BY.

    Ejemplo:

    Main = fpc.SQLWO("Codigo=1234", "Nombre")
  • fpc.SQLX(Valor, Tipo, Longitud)

    Formatea Valor como literal SQL según Tipo, aceptando tipos Hexa y sus equivalentes SQL. Longitud limita los textos si es mayor que cero. Delega en SQLT, SQLC, SQLF, SQLH o SQLB; los tipos desconocidos se tratan como texto.

    Ejemplo:

    Main = fpc.SQLX("Ejemplo", "Texto", 50)
  • fpc.TipSQL2Hexa(TipoSQL)

    Normaliza el nombre TipoSQL a Texto, Memo, Entero, Real, Contador, Fecha, Hora o Booleano. Si no reconoce el tipo, devuelve el mismo nombre recibido.

    Ejemplo:

    Main = fpc.TipSQL2Hexa("SmallInt")
  • fpc.SQLT(Texto)

    Devuelve Texto entre comillas simples, duplicando las comillas internas y eliminando caracteres nulos. Una cadena vacía se representa como dos comillas simples.

    Ejemplo:

    Main = fpc.SQLT("O'Brien")
  • fpc.SQLT(Texto, LongitudMaxima)

    Sobrecarga que limita Texto a LongitudMaxima antes de delimitarlo y escapar las comillas para SQL. Mantiene el comportamiento de SQLT para textos vacíos.

    Ejemplo:

    Main = fpc.SQLT("Texto largo", 5)
  • fpc.SQLF(Valor)

    Devuelve un literal de fecha adaptado a la conexión: d/M/yyyy entre comillas para SQL Server y M/d/yyyy entre almohadillas para la alternativa. Si Valor no es una fecha válida devuelve "Null".

    Ejemplo:

    Main = fpc.SQLF("30/09/2026")
  • fpc.SQLH(Valor)

    Formatea una hora como HH:mm:ss, entre comillas para SQL Server y almohadillas para la alternativa. Devuelve "Null" si Valor no es una fecha u hora válida.

    Ejemplo:

    Main = fpc.SQLH("14:30:00")
  • fpc.SQLC(Valor)

    Convierte Valor a texto con punto decimal para SQL. Intenta interpretarlo como entero y después como real; si no puede, utiliza ToString y sustituye comas por puntos. Nothing y la cadena vacía producen "0".

    Ejemplo:

    Main = fpc.SQLC(1234)
  • fpc.SQLB(Valor)

    Devuelve "(1)" o "(0)" para SQL Server y "True" o "False" para la conexión alternativa, según Valor.

    Ejemplo:

    Main = fpc.SQLB(True)
  • fpc.SQLConcat(Valor)

    Adapta una expresión de concatenación al operador del motor de base de datos. Para SQL Server trata los campos con IsNull para evitar que un nulo anule la concatenación; conserva los literales y el alias de la expresión.

    Ejemplo:

    Main = fpc.SQLConcat("Nombre+' '+Nombre2")
  • fpc.Junto()

    Devuelve el operador de concatenación adecuado a la conexión: + para SQL Server y & para la alternativa.

    Ejemplo:

    Main = fpc.Junto()
  • fpc.SQLCR(Valor)

    Adapta un criterio SQL al formato de selección de Crystal Reports. Transforma referencias entre corchetes, comodines, booleanos, nulos y fechas mediante sustituciones. Es una adaptación de los criterios usados por Hexa, no un analizador general de SQL.

    Ejemplo:

    Main = fpc.SQLCR("[Cliente].[Codigo]=1234")
  • fpc.SQLNull(Campo)

    Devuelve una expresión SQL que sustituye por texto vacío los valores nulos de Campo, usando la sintaxis del motor activo.

    Ejemplo:

    Main = fpc.SQLNull("Nombre")
  • fpc.SQLNullN(Campo)

    Equivalente numérico de SQLNull: genera una expresión que sustituye por cero los nulos de Campo.

    Ejemplo:

    Main = fpc.SQLNullN("Cantidad")
  • fpc.JSON2SQL(Cond)

    Convierte un criterio JSON de Hexa a SQL mediante la clase de criterios. Si Cond ya es un criterio de texto lo conserva; Nothing produce cadena vacía.

    Ejemplo:

    Main = fpc.JSON2SQL("Codigo=1234")
  • fpc.JSON2Humano(Cond)

    Convierte un criterio JSON de Hexa a su descripción legible. Conserva los criterios que no están en ese formato y devuelve cadena vacía para Nothing.

    Ejemplo:

    Main = fpc.JSON2Humano("Codigo=1234")
  • fpc.AddCrit(JSONActual, Nombre, Tipo, Valor1, Valor2, Inverso)

    Añade un criterio al conjunto JSONActual. Nombre identifica el campo, Tipo el tipo de criterio, Valor1 y Valor2 sus valores e Inverso la inversión. Devuelve el JSON de criterios actualizado mediante JsonCrit.

  • fpc.CriBus(Campo, Texto, Negado)

    Construye un criterio SQL de búsqueda sobre Campo a partir de Texto, con combinaciones de términos, exclusiones y comodines. Negado aplica NOT al conjunto. Utiliza CriConAcentos para las comparaciones que requieren variantes de acentuación.

    Ejemplo:

    Main = fpc.CriBus("Nombre", "tornillo", False)
  • fpc.PNCod(P, N, D)

    Une el prefijo P, sin espacios exteriores, y el número N, rellenando con ceros hasta la longitud total D. Si no caben, amplía la longitud para conservarlos. No introduce un guion entre prefijo y número.

    Ejemplo:

    Main = fpc.PNCod("A", 123, 8)
  • fpc.EP(Codigo)

    Extrae la parte anterior al primer guion de Codigo. Devuelve cadena vacía si no hay guion.

    Ejemplo:

    Main = fpc.EP("A-1234")
  • fpc.EN(Codigo)

    Extrae como texto la parte posterior al primer guion de Codigo. Devuelve cadena vacía si no hay guion.

    Ejemplo:

    Main = fpc.EN("A-1234")
  • fpc.Aproximacion(Numero, Precision)

    Redondea Numero a Precision decimales. Utiliza Fix y una corrección pequeña para compensar errores de representación decimal, teniendo en cuenta el signo del número.

    Ejemplo:

    Main = fpc.Aproximacion(123.456, 2)
  • fpc.VAC(Valor)

    Convierte un texto numérico con coma decimal a Double. Elimina los puntos, cambia la coma por punto y utiliza Val. Si contiene %, divide el resultado entre cien. No debe pasarse un texto con punto decimal esperando que conserve ese punto.

    Ejemplo:

    Main = fpc.VAC("1.234,56")
  • fpc.CFe(Valor)

    Convierte Valor a Date cuando es una fecha válida. En caso contrario devuelve 31/12/2099, utilizada por Hexa como fecha futura sustitutiva.

    Ejemplo:

    Main = fpc.CFe("30/09/2026")
  • fpc.CompFe(FechaMenor, FechaMayor)

    Devuelve si FechaMayor es posterior o igual a FechaMenor. El código contempla valores no interpretables como fecha: devuelve falso para FechaMenor inválida y verdadero para FechaMayor inválida.

    Ejemplo:

    Main = fpc.CompFe(DateSerial(2026, 1, 1), DateSerial(2026, 9, 30))
  • fpc.SoloFecha(FechaHora)

    Devuelve la parte de fecha de FechaHora mediante formateo y conversión a Date, eliminando la hora.

    Ejemplo:

    Main = fpc.SoloFecha(Now())
  • fpc.SoloHora(FechaHora)

    Devuelve la parte horaria de FechaHora, con horas, minutos y segundos, como Date.

    Ejemplo:

    Main = fpc.SoloHora(Now())
  • fpc.IniHora(Hora)

    Devuelve Hora con minutos y segundos a cero, conservando su hora del día.

    Ejemplo:

    Main = fpc.IniHora(Now())
  • fpc.DespDias(Fecha, M1, M2, M3, S1, S2, S3)

    Avanza Fecha hasta un día admitido por M1, M2 y M3, que son días del mes, y por S1, S2 y S3, que son días de la semana con lunes igual a 1. Tres ceros en un grupo eliminan esa restricción. Ajusta determinados días al fin del mes; si no encuentra coincidencia en 100 iteraciones, devuelve la fecha inicial.

    Ejemplo:

    Main = fpc.DespDias(DateSerial(2026, 9, 1), 15, 30, 0, 0, 0, 0)
  • fpc.EsFiesta(Dia, Empleado)

    Consulta las citas para determinar si Dia es festivo, opcionalmente para Empleado. Considera festivos los fines de semana salvo marca #LAB#, los días con #FEST# y los meses marcados con #FESTMES#. La búsqueda mensual utiliza el mes sin filtrar el año.

    Ejemplo:

    Main = fpc.EsFiesta(DateSerial(2026, 9, 30), "")
  • fpc.DesplazaPeriodicidad(Fecha, Periodicidad, Cantidad)

    Desplaza Fecha en Cantidad unidades de Periodicidad. Admite nombres como Diaria, Semanal, Mensual, Trimestral, Semestral y Anual, intervalos horarios y expresiones numéricas con unidad. Puede retroceder con cantidades negativas. Si no reconoce la periodicidad conserva la fecha.

    Ejemplo:

    Main = fpc.DesplazaPeriodicidad(DateSerial(2026, 9, 30), "Mensual", 1)
  • fpc.DiferenciaPeriodicidad(FechaD, FechaH, Periodicidad)

    Calcula la diferencia entre FechaD y FechaH expresada en la periodicidad indicada, utilizando DateDiff y los divisores correspondientes. Admite los intervalos contemplados en el código, incluidos meses, años, días y minutos. Devuelve cero para una periodicidad no reconocida.

    Ejemplo:

    Main = fpc.DiferenciaPeriodicidad(DateSerial(2026, 1, 1), DateSerial(2026, 4, 1), "Mensual")
  • fpc.FinMes(Fecha)

    Devuelve el último día del mes de Fecha.

    Ejemplo:

    Main = fpc.FinMes(DateSerial(2026, 2, 10))
  • fpc.Trimestre(FechaOMes)

    Devuelve el trimestre, de 1 a 4, a partir de una fecha o un número de mes.

    Ejemplo:

    Main = fpc.Trimestre(9)
  • fpc.FinTrim(Fecha)

    Devuelve el último día del trimestre al que pertenece Fecha.

    Ejemplo:

    Main = fpc.FinTrim(DateSerial(2026, 8, 10))
  • fpc.FinAno(Fecha)

    Devuelve el 31 de diciembre del año de Fecha.

    Ejemplo:

    Main = fpc.FinAno(DateSerial(2026, 9, 30))
  • fpc.UnoMes(Fecha)

    Devuelve el primer día del mes de Fecha.

    Ejemplo:

    Main = fpc.UnoMes(DateSerial(2026, 9, 30))
  • fpc.UnoTrim(Fecha)

    Devuelve el primer día del trimestre de Fecha.

    Ejemplo:

    Main = fpc.UnoTrim(DateSerial(2026, 9, 30))
  • fpc.UnoAno(Fecha)

    Devuelve el 1 de enero del año de Fecha.

    Ejemplo:

    Main = fpc.UnoAno(DateSerial(2026, 9, 30))
  • fpc.UnoSemana(Fecha)

    Devuelve el lunes de la semana de Fecha, conservando la hora si la entrada la contiene.

    Ejemplo:

    Main = fpc.UnoSemana(DateSerial(2026, 9, 30))
  • fpc.NmbMes(Mes)

    Devuelve el nombre castellano del mes indicado por Mes, de 1 a 12.

    Ejemplo:

    Main = fpc.NmbMes(9)
  • fpc.NumMes(Mes)

    Devuelve el número correspondiente al nombre castellano Mes; devuelve 0 si no coincide con los nombres contemplados.

    Ejemplo:

    Main = fpc.NumMes("Septiembre")
  • fpc.NmbDia(dia)

    Devuelve el nombre del día de la semana, con 1 para lunes y 7 para domingo.

    Ejemplo:

    Main = fpc.NmbDia(1)
  • fpc.CNIF(NIF)

    Calcula la letra de control de un NIF de persona física mediante el resto entre 23. Devuelve la letra, no el NIF completo. Contempla los prefijos de NIE tratados en la implementación.

    Ejemplo:

    Main = fpc.CNIF("12345678")
  • fpc.CDC(Entidad, Oficina, Cuenta)

    Calcula los dos dígitos de control de una cuenta bancaria a partir de Entidad, Oficina y Cuenta. Los parámetros corresponden a cuatro, cuatro y diez dígitos respectivamente.

    Ejemplo:

    Main = fpc.CDC("2100", "0418", "0200051332")
  • fpc.CheckIBAN(CodigoIBAN)

    Calcula los dos dígitos de control de CodigoIBAN, ignorando los actuales. Devuelve esos dos dígitos como texto; para comprobar el IBAN se comparan con las posiciones 3 y 4.

    Ejemplo:

    Main = fpc.CheckIBAN("ES0021000418450200051332")
  • fpc.CheckCreditor(Codigo)

    Calcula los dígitos de control de un identificador de acreedor SEPA. Utiliza el país y la parte identificadora a partir de la octava posición, sustituyendo los dígitos de control actuales por cero.

  • fpc.CnvLetras(C)

    Sustituye las letras por sus valores numéricos para los cálculos de control bancario y conserva los dígitos. Se utiliza desde CheckIBAN y CheckCreditor.

    Ejemplo:

    Main = fpc.CnvLetras("ES00")
  • fpc.LongMod97(XL)

    Calcula el resto de dividir por 97 una cadena de dígitos que puede superar el tamaño de los tipos enteros habituales, procesándola por partes.

    Ejemplo:

    Main = fpc.LongMod97("12345678901234567890")
  • fpc.Directorio(Ruta)

    Permite enumerar archivos mediante Dir. La primera llamada recibe Ruta, que puede incluir comodines; las siguientes reciben cadena vacía para continuar. Devuelve el nombre encontrado o cadena vacía al terminar.

    Ejemplo:

    Main = fpc.Directorio("C:\Datos\*.txt")
  • fpc.Pth(RutaCompleta)

    Extrae la carpeta de una ruta con barras inversas, quitando el nombre del archivo.

    Ejemplo:

    Main = fpc.Pth("C:\Datos\lista.txt")
  • fpc.Fil(RutaCompleta)

    Extrae el nombre del archivo, con extensión, de RutaCompleta.

    Ejemplo:

    Main = fpc.Fil("C:\Datos\lista.txt")
  • fpc.Ext(Fichero)

    Devuelve la extensión del archivo sin el punto, admitiendo una ruta completa.

    Ejemplo:

    Main = fpc.Ext("C:\Datos\lista.txt")
  • fpc.Nse(Fichero)

    Devuelve el nombre del archivo sin carpeta ni extensión. La implementación descuenta también el punto; está pensada para nombres con extensión.

    Ejemplo:

    Main = fpc.Nse("C:\Datos\lista.txt")
  • fpc.PF(Path, file)

    Combina Path y file, añadiendo una barra inversa cuando la carpeta no termina en ella.

    Ejemplo:

    Main = fpc.PF("C:\Datos", "lista.txt")
  • fpc.HPF(file)

    Completa una ruta relativa con el directorio de trabajo de Hexa. Conserva las rutas que reconoce como absolutas.

    Ejemplo:

    Main = fpc.HPF("dat\Cliente.sql")
  • fpc.RFil(PF)

    Lee el contenido de un archivo de texto. Si no puede leerlo devuelve un mensaje con la ruta, en lugar de lanzar ese error al llamador.

    Ejemplo:

    Main = fpc.RFil(fpc.HPF("dat\ejemplo.txt"))
  • fpc.WFil(PF, texto)

    Escribe texto en PF, reemplazando su contenido mediante StreamWriter. Devuelve la longitud del texto escrito y, en su manejador de errores, devuelve 1; ese valor no distingue un error de un texto de un carácter.

    Ejemplo:

    Main = fpc.WFil(fpc.HPF("temp\ejemplo.txt"), "Texto de prueba")
  • fpc.CopF(PfOrigen, PFDestino)

    Copia el archivo PfOrigen a PFDestino mediante FileCopy. Asigna 0 como resultado tras la copia; los errores de la operación pueden propagarse.

    Ejemplo:

    Main = fpc.CopF("C:\Datos\origen.txt", "C:\Datos\copia.txt")
  • fpc.RenF(PfArchivo, PfNuevoNombre)

    Renombra o mueve PfArchivo a PfNuevoNombre. Devuelve "Renombrado" o "Error".

    Ejemplo:

    Main = fpc.RenF("C:\Datos\anterior.txt", "C:\Datos\nuevo.txt")
  • fpc.BorF(PfArchivo)

    Elimina el archivo especificado. Devuelve "Borrado" o "Error" según el resultado de la operación.

    Ejemplo:

    Main = fpc.BorF(fpc.HPF("temp\ejemplo.txt"))
  • fpc.ExF(PF)

    Devuelve verdadero si existe el archivo PF.

    Ejemplo:

    Main = fpc.ExF(fpc.HPF("dat\Cliente.sql"))
  • fpc.ExD(Pf)

    Devuelve verdadero si existe la carpeta Pf.

    Ejemplo:

    Main = fpc.ExD("C:\Datos")
  • fpc.ff(Pf)

    Devuelve la fecha y hora de última escritura del archivo mediante File.GetLastWriteTime. Ante una excepción devuelve Nothing convertido al tipo Date.

    Ejemplo:

    Main = fpc.ff("C:\Datos\lista.txt")
  • fpc.TF(Pf)

    Devuelve el tamaño del archivo en bytes, o cero si se produce un error.

    Ejemplo:

    Main = fpc.TF("C:\Datos\lista.txt")
  • fpc.TNF(Nombre)

    Sustituye por guiones bajos los caracteres de Nombre que la implementación considera incompatibles con un nombre de archivo, como barras, dos puntos, asterisco, interrogación y comillas.

    Ejemplo:

    Main = fpc.TNF("Factura:1234.pdf")
  • fpc.UrlPth(RutaCompleta)

    Extrae la parte de carpeta de una URL, quitando los caracteres posteriores a la última barra.

    Ejemplo:

    Main = fpc.UrlPth("https://example.com/documentos/lista.htm")
  • fpc.URLSup(Ruta)

    Devuelve el nivel superior de una ruta web quitando su último tramo. El código reconstruye el resultado con el prefijo http://, por lo que no conserva necesariamente el protocolo de entrada.

    Ejemplo:

    Main = fpc.URLSup("http://example.com/documentos/lista")
  • fpc.UrlSrv(RutaCompleta)

    Extrae el servidor de RutaCompleta a partir de la separación entre protocolo, host y ruta.

    Ejemplo:

    Main = fpc.UrlSrv("http://example.com/documentos/lista.htm")
  • fpc.CapturaHTTP(URL)

    Realiza una petición HTTP y devuelve el cuerpo recibido como texto. Configura TLS, cabeceras y tiempos de espera en la propia función. En caso de excepción devuelve cadena vacía.

    Ejemplo:

    Main = fpc.CapturaHTTP("https://example.com/")
  • fpc.LLamaHttpFirmaOauth(BaseURL, ConsumerKey, ConsumerSecret, Parametros)

    Construye y ejecuta una petición GET firmada con OAuth y HMAC-SHA256. BaseURL es el recurso; ConsumerKey y ConsumerSecret son las credenciales; Parametros contiene un objeto JSON con los parámetros adicionales. Devuelve el texto obtenido mediante CapturaHTTP.

  • fpc.DatoJSON(cadenaJSON, ruta)

    Obtiene un valor de cadenaJSON siguiendo ruta, con propiedades separadas por puntos e índices de arrays entre paréntesis, empezando por cero. Devuelve ToString del valor o Nothing si no encuentra una clave. Los errores de JSON o índices fuera de rango pueden propagarse.

    Ejemplo:

    Main = fpc.DatoJSON("{""nombre"":""Ana""}", "nombre")
  • fpc.CuentaJSON(cadenaJSON, ruta)

    Recorre cadenaJSON con la misma sintaxis de ruta que DatoJSON y devuelve la cantidad de elementos si el destino es un array. Devuelve -1 si no existe la clave o el destino no es un array; los errores de análisis o índice pueden propagarse.

    Ejemplo:

    Main = fpc.CuentaJSON("{""datos"":[1,2,3]}", "datos")
  • fpc.EnvCom(Puerto, Texto)

    Abre el puerto serie Puerto, envía Texto y lo cierra con los ajustes fijados en la función. Está destinado, entre otros usos, a displays de TPV. Devuelve "OK" o el mensaje de la excepción.

    Ejemplo:

    Main = fpc.EnvCom("COM1", "Texto")
  • fpc.BajaFTP(Archivo, RutaDestino, Servidor, Usuario, Clave)

    Descarga Archivo desde Servidor usando Usuario y Clave y lo guarda en RutaDestino con su nombre de archivo. Devuelve un texto de la descarga o del error.

  • fpc.BorraFTP(Archivo, Servidor, Usuario, Clave)

    Elimina Archivo del servidor FTP con las credenciales indicadas. Devuelve un texto de confirmación o del error.

  • fpc.SubeSSH(Archivo, RutaDestino, DirectorioCrear, Servidor, Usuario, Clave, ClavePrivada)

    Sube Archivo por SFTP a RutaDestino. DirectorioCrear permite crear un directorio remoto. Admite autenticación con Clave o con el archivo ClavePrivada según los valores recibidos. Devuelve un texto del resultado o el mensaje de la excepción.

  • fpc.BajaSSH(Archivo, RutaDestino, Servidor, Usuario, Clave, ClavePrivada)

    Descarga Archivo por SFTP a RutaDestino con las credenciales de Servidor y Usuario, usando clave o archivo de clave privada. Devuelve un texto de la descarga o el mensaje de la excepción.

  • fpc.SubeFTP(Archivo, RutaDestino, Servidor, Usuario, Clave)

    Sube Archivo al servidor FTP y la RutaDestino especificados, utilizando Usuario y Clave. Devuelve un texto de confirmación o del error.

  • fpc.CreaDirectorioFTP(Nombre, RutaDestino, Servidor, Usuario, Clave)

    Crea el directorio Nombre bajo RutaDestino en el servidor FTP indicado. Devuelve un texto de confirmación o del error.

  • fpc.EsSi(Valor)

    Interpreta un texto como booleano: devuelve falso para "No", "False", "Falso", "0" y cadena vacía; los demás valores producen verdadero conforme a la comparación de cadenas del proyecto.

    Ejemplo:

    Main = fpc.EsSi("Si")
  • fpc.Igu(Texto, Campo, EliminarComillas)

    Extrae el valor de Campo dentro de Texto en expresiones Campo=Valor o Campo LIKE Valor. Reconoce comillas simples, dobles y almohadillas; EliminarComillas indica si retira esos delimitadores. Devuelve cadena vacía si no encuentra el campo. Se utiliza para leer Opciones y resultados de otros métodos.

    Ejemplo:

    Main = fpc.Igu("Prefijo='A' Numero=1234", "Prefijo", True)
  • fpc.MulTxt(Texto, Indice, Separador, EliminarDelimitador)

    Devuelve el bloque Indice de Texto separado por Separador, contando desde 1. Está implementado para separadores de un carácter. EliminarDelimitador es opcional y vale falso; permite retirar delimitadores exteriores reconocidos.

    Ejemplo:

    Main = fpc.MulTxt("uno;dos;tres", 2, ";")
  • fpc.EnMulTxt(Texto, Buscar, Separador)

    Busca un bloque igual a Buscar dentro de Texto y devuelve su posición desde 1, o 0 si no lo encuentra. El recorrido se detiene al encontrar un bloque vacío.

    Ejemplo:

    Main = fpc.EnMulTxt("uno;dos;tres", "dos", ";")
  • fpc.Opc(Texto, Campo, Siguiente)

    Extrae una opción de una cadena con asignaciones separadas por espacios. Con Siguiente falso devuelve el valor de Campo; con verdadero devuelve el nombre del campo siguiente, o el primero si Campo está vacío. Los textos pueden delimitarse con comillas simples.

    Ejemplo:

    Main = fpc.Opc("Banco=1 Fecha='30/09/2026'", "Banco", False)
  • fpc.DivideLinea(Texto, Longitud)

    Devuelve una parte inicial de Texto que respeta Longitud, procurando cortar en un espacio para no partir palabras. No modifica ni devuelve el resto del texto.

    Ejemplo:

    Main = fpc.DivideLinea("Una frase con varias palabras", 15)
  • fpc.SinAcentos(Texto)

    Sustituye las vocales con acento agudo contempladas por la función por vocales sin acento. Es una serie de sustituciones, no una normalización completa de Unicode.

  • fpc.SinEspe(Texto)

    Adapta Texto al conjunto de caracteres utilizado en los intercambios de Hexa, como los archivos SEPA. Aplica SinAcentos, sustituye asteriscos y transforma o descarta otros caracteres según su tabla interna.

  • fpc.Acentua(Vocal, Abierto)

    Devuelve la vocal minúscula recibida con acento grave si Abierto es verdadero y agudo si es falso. Para valores distintos de las vocales contempladas conserva el valor recibido.

    Ejemplo:

    Main = fpc.Acentua("a", False)
  • fpc.Carac(texto, Posicion)

    Devuelve el carácter de texto situado en Posicion, contando desde 0. Si la posición supera el final devuelve cadena vacía. No protege frente a posiciones negativas.

    Ejemplo:

    Main = fpc.Carac("ABC", 1)
  • fpc.CriConAcentos(Campo, Texto)

    Construye un criterio LIKE sobre Campo que contempla variantes acentuadas de Texto. Utiliza la sintaxis y las alternativas previstas para el motor de base de datos.

    Ejemplo:

    Main = fpc.CriConAcentos("Nombre", "%cafe%")
  • fpc.CHTML(texto, Inverso)

    Convierte vocales acentuadas, eñes y el signo de interrogación de apertura en entidades HTML. Con Inverso verdadero realiza la conversión contraria. Solo transforma los caracteres enumerados en el código; no es un escape general de todas las etiquetas HTML.

  • fpc.TEnc(texto, Inverso)

    Codifica espacios y vocales acentuadas como secuencias porcentuales para una URL. Con Inverso verdadero decodifica esas mismas secuencias. No implementa la codificación URL de todos los caracteres posibles.

    Ejemplo:

    Main = fpc.TEnc("dos palabras", False)
  • fpc.ExisteCookie(Pagina, Nombre1, Nombre2)

    Intenta acceder a la subclave Nombre2 de la cookie Nombre1 de Pagina.Request y evalúa su valor como condición. Devuelve falso ante un error. Por esa evaluación no equivale simplemente a comprobar la existencia de la cookie.

  • fpc.ExisteCookie(Pagina, Nombre1, Nombre2, ibef)

    Sobrecarga que, además de consultar la cookie, utiliza su valor como número de Matricula en la base auxiliar. Comprueba la presencia de la marca <IBEF> en ObsPrivadas según el booleano ibef. Devuelve falso cuando no coincide o hay un error.

  • fpc.Formato(Tipo)

    Devuelve una máscara de formato a partir de un nombre de tipo. Por ejemplo Moneda produce 0.00, Fecha dd-MM-yy, FechaW3C yyyy-MM-dd y Hora HH:mm:ss. Devuelve cadena vacía para tipos sin formato asignado.

    Ejemplo:

    Main = fpc.Formato("FechaW3C")
  • fpc.Formatea(valor, Formato)

    Formatea valor utilizando la máscara que devuelve fpc.Formato para el nombre recibido en Formato. Ese argumento es un nombre de formato de Hexa, no directamente una máscara libre.

    Ejemplo:

    Main = fpc.Formatea(DateSerial(2026, 9, 30), "FechaW3C")
  • fpc.Formatea2(Campo, Tipo, Valor)

    Prepara Valor para visualizarlo según Campo y Tipo. Normaliza el tipo, presenta booleanos como Sí/No, da formato a fechas y trata los valores numéricos y monetarios según las reglas de la función.

    Ejemplo:

    Main = fpc.Formatea2("Fecha", "Fecha", "30/09/2026")
  • fpc.SinComillas(Texto)

    Elimina todas las comillas simples, dobles y almohadillas de Texto, no solo los delimitadores de los extremos.

    Ejemplo:

    Main = fpc.SinComillas("'Texto'")
  • fpc.IniPalabra(Texto, Posicion, Fin, CadenaValida)

    Busca el límite de una palabra alrededor de Posicion. Fin determina si avanza hacia el final o retrocede al inicio. El parámetro opcional CadenaValida permite definir los caracteres que pertenecen a la palabra; por defecto está vacío.

  • fpc.IniPalabra2(Texto, Posicion, Fin)

    Variante de búsqueda del inicio o fin de palabra que considera delimitadores los caracteres distintos de letras y números. Fin elige la dirección del recorrido desde Posicion.

  • fpc.InstrVB6(Start, string1, string2)

    Busca string2 dentro de string1 a partir de Start con posiciones desde 1. Devuelve la posición absoluta encontrada o 0 cuando no hay coincidencia.

    Ejemplo:

    Main = fpc.InstrVB6(2, "ABCABC", "BC")
  • fpc.SinLetras(Texto)

    Recorre Texto conservando los caracteres numéricos admitidos por la implementación y eliminando las letras. Devuelve el texto resultante.

    Ejemplo:

    Main = fpc.SinLetras("AB123CD")
  • fpc.EnTexto(Inicio, Texto, Cadena)

    Busca Cadena en Texto a partir de Inicio, contando desde 1, ignorando los espacios en la comparación. Devuelve la posición encontrada o 0. Se utiliza para localizar etiquetas HTML y XML.

    Ejemplo:

    Main = fpc.EnTexto(1, "A B C", "ABC")
  • fpc.Obj2JSON(O)

    Serializa el objeto O a JSON mediante JavaScriptSerializer. Permite convertir objetos desde los scripts de Hexa.

    Ejemplo:

    Main = fpc.Obj2JSON("Texto")
  • fpc.PdfPasswd(Origen, Destino, Clave)

    Crea en Destino una copia protegida por Clave del PDF Origen. Rechaza un origen inexistente y un destino ya existente. Devuelve un mensaje con el archivo creado o la descripción del error.

    Ejemplo:

    Main = fpc.PdfPasswd("C:\Datos\origen.pdf", "C:\Datos\protegido.pdf", "ClaveEjemplo")
  • fpc.PDFFirma(RutaOriginal, RutaFirmado, CertificadoSN)

    Firma el PDF RutaOriginal y guarda el resultado en RutaFirmado. Busca CertificadoSN en el almacén personal del usuario; si está vacío utiliza el parámetro Certificado. Requiere un certificado con clave privada. Devuelve "Firmado correctamente", "Certificado incorrecto" o el texto del error.

  • fpc.FinEtiqueta(Inicio, Texto, Etiqueta)

    Busca la etiqueta de cierre correspondiente a Etiqueta desde Inicio en Texto, teniendo en cuenta las apariciones anidadas. Etiqueta debe empezar por el signo de apertura <. Devuelve la posición del cierre desde 1 o 0 si no lo encuentra.

    Ejemplo:

    Main = fpc.FinEtiqueta(1, "<div>Texto</div>", "<div")
  • fpc.EliminaEtiqueta(Inicio, Texto, Etiqueta, EliminarContenido)

    Elimina la pareja de etiquetas localizada desde Inicio. Si EliminarContenido se evalúa como verdadero elimina también lo que contienen; en caso contrario conserva el contenido. Devuelve el texto original si no encuentra todos los límites.

    Ejemplo:

    Main = fpc.EliminaEtiqueta(1, "<div>Texto</div>", "<div", False)
  • fpc.TxtErr()

    Devuelve "Ha ocurrido un error " seguido del número y la descripción del objeto Err de Visual Basic.

    Ejemplo:

    Main = fpc.TxtErr()

Indice: Las clases y sus métodos en Hexa V.9

Volver a la búsqueda anterior