No hay que definirlo. Todas estas funciones se pueden utilizar sin teclear: 'objeto.funcion()'. Como es habitual, muchas de ellas devuelven el valor 0 si no se produce ningún error
Hay un ejemplo de uso de funciones en el Informe \Colecciones especiales\ Ejemplos Documentación\ ejefec·Ejemplo de funciones de fecha y hora. El parámetro fecha, también admite un campo de tipo FechaHora en las funciones de fecha (en las de hora no). Los campos de tipo Fecha son internamente en BD números enteros en formato AAAAMMDD, y los de tipo FechaHora son números reales, cuya parte entera es la fecha y la decimal la hora en formato: AAAAMMDD.HHMMSS
| |||||
cadena formato (cadena str, long tamaño, long por_donde=0, char cad_relleno='0') | · Devuelve cadena 'str' formateada en otra, pudiendo fijar un 'tamaño' fijo de caracteres, y poniendo una cadena 'cad_relleno' (por defecto ceros) por el lugar que se indique en 'por_donde': (0)izquierda (1)la mitad a izq y la mitad a derecha -pone un carácter más si son impares- (2)derecha. Ej: formato("1234.456",11,1,'-') da como resultado --1234.456-- | ||||
cadena recorta (cadena str, long por_donde=1) | · Devuelve la cadena 'str' limpia de espacios en blanco, tabuladores, fin de línea y retornos de carro, por donde se indique en el parámetro 'por_donde'. (0)por la izquierda -delante- (1)por delante y detrás (2)por la derecha -detrás- (3)todos los que haya, incluso en medio | ||||
cadena prefijo (cadena str, cadena b=" ", long busca_por_izq=0) | · Devuelve una cadena con el prefijo encontrado en la cadena 'str', hasta llegar a la subcadena 'b', con el siguiente criterio: el separador es la subcadena 'b' especificada (por defecto espacio en blanco), y busca (0)el primero por la izquierda (1)primero por la derecha. Ej: prefijo ("AB CD EF", ' ', 1) > "AB CD" | ||||
cadena sufijo (cadena str, cadena b=" ", long busca_por_izq=0) | · Devuelve una cadena con el sufijo encontrado en la cadena 'str', hasta llegar a la subcadena 'b', con el siguiente criterio: el separador es la subcadena 'b' especificada (por defecto espacio en blanco), y busca (0)el primero por la izquierda (1)primero por la derecha. Ej: sufijo ("AB CD EF", ' ', 1) > "EF" | ||||
cadena simple (cadena str) | · Devuelve la cadena 'str' sin \t\r\n, sin dobles espacios ' ' y recortada | ||||
cadena repite (cadena str, long num) | · Devuelve la cadena 'str' repetida 'num' número de veces | ||||
cadena cambia (cadena str, cadena ori, cadena des, cadena mod="") | · cambia en 'str' las cadenas 'ori' por las cadenas 'des', modificadores: t1(Todas) x0(eXterior) d0(Desde) p0(palabras) | ||||
cadena siguiente (cadena str, bool con_extension=0) | · Devuelve la cadena 'str' incrementada en uno | ||||
var opcion(que,opcion0,opcion1,opcion2,...) | · Devuelve la opcion definida en que | ||||
cadena sincomentarios (cadena tex) | · Devuelve el parámetro 'tex' eliminando de él cualquier comentario | ||||
cadena ofusca_js (cadena tex) | · Devuelve el parámetro 'tex' eliminando de él cualquier comentario, retornos de carro, tabulares y espacios innecesarios en un contexto JScript, para dejarlo menos legible | ||||
cadena acolumnas (cadena texto, long espacios_de_separación=1) | · Devuelve una cadena formateada a partir de un texto multilínea encolumnándolo. (\t)izquierda (\v)(\b)derecha (\f)rellena (\r\\n) | ||||
obsoleto | |||||
cadena rtf2tex (cadena rtf) | · Convierte texto en formato RTF (rich text format ó formato de texto rico) a texto plano (ASCII) con retornos de carro | ||||
cadena tex2rtf (cadena tex, long que=0) | · Convierte texto plano (ASCII) a texto en formato RTF (rich text format ó formato de texto rico); que: (0)colorea sintaxis JS (1)colorea sintaxis SQL ... | ||||
cadena htm2tex (cadena htm) | · Convierte texto en formato HTM (7 bits y caracteres especiales) a texto plano (ASCII) con retornos de carro | ||||
cadena tex2htm (cadena tex) | · Convierte texto plano (ASCII) a formato HTM (7 bits y caracteres especiales) | ||||
cadena json2tex (cadena tex) | · Convierte texto plano (ASCII) a formato JSON ('"\r\n) | ||||
cadena tex2json (cadena tex) | · Convierte texto JSON a texto plano (ASCII) | ||||
cadena utf2ansi (cadena utf) | · Convierte texto UTF-8 a texto ANSI | ||||
cadena ansi2utf (cadena ansi) | · Convierte texto ANSI a texto UTF-8 | ||||
cadena lc (cadena cad) | · Devuelve la cadena 'cad' traducida al lenguaje propuesto en la ventana Opciones de la aplicación | ||||
cadena LC (cadena cad) | · igual que lc() | ||||
long magico (cadena tex) | · Retorna un número casi único (mágico) para el texto dato (CRC de 32b) | ||||
cadena magicoc (cadena tex, long que=0) | · Retorna un codigo casi único (mágico) para el texto dato (CRC de 32b); que: (0)8c hexadecimal (1)10c decimal | ||||
long compara (long a, long b) long compara (double a, double b) long compara (cadena a, cadena b) long compara (Cvar a, Cvar b) | · Devuelve '1' si el primer parámetro es mayor que el segundo, '-1' si es menor y '0' si son iguales | ||||
long lencmp (cadena a, cadena b, long map=0, long pos=-1) | · Devuelve '-1', '0' o '1' dependiendo de si la cadena 'a' es menor, igual o mayor que 'b'. Se compara según el parámetro 'map': (0)normal, (1)minúsculas, (2)mayúsculas, (3)indistintamente; y desde la posición 'pos' (en base cero) de cada cadena | ||||
cadena lenmay (cadena str) | · Devuelve la cadena 'str' convirtiendo todos sus caracteres a mayúsculas | ||||
cadena lenmin (cadena str) | · Devuelve la cadena 'str' convirtiendo todos sus caracteres a minúsculas | ||||
cadena lensin (cadena str) | · Devuelve la cadena 'str' eliminando diacríticos y convirtiendo todos sus caracteres a mayúsculas | ||||
cadena lencap (cadena str) | · Devuelve la cadena 'str' convirtiendo en mayúsculas el primer carácter de cada palabra | ||||
| |||||
cadena d2a (double real, long dec=0) | · Devuelve una cadena a partir del número 'real' con el número de decimales 'dec' especificado poniendo el punto de millar y coma decimal según el idioma del sistema operativo | ||||
cadena l2a (long entero) | · Devuelve una cadena a partir del número 'entero' poniendo el punto de millar según el idioma del sistema operativo | ||||
cadena d2e (double real, long dec=0) | · Devuelve una cadena en formato estándar a partir del número 'real' con el número de decimales 'dec' especificado quitando el formato numérico (punto de millares y coma decimal) | ||||
cadena l2e (long entero, ceros=0) | · Devuelve una cadena en formato estándar a partir del número 'real' quitando el formato numérico (punto de millares). Si se especifica un número de 'ceros', se rellena la cadena resultante con ceros por la izquierda (si el valor es negativo), o por la derecha (si es positivo) hasta completar el número | ||||
double a2d (cadena str) | · Devuelve un número real a partir de la cadena 'str' en formato no estándar | ||||
long a2l (cadena str) | · Devuelve un número entero a partir de la cadena 'str' en formato no estándar | ||||
double e2d (cadena str) | · Devuelve un número real a partir de la cadena 'str' en formato estándar | ||||
long e2l (cadena str) | · Devuelve un número entero a partir de la cadena 'str' en formato estándar | ||||
cadena letra (long num | double num, long decimales=0, long masculino=0) | · Devuelve una cadena de texto con la expresión del número 'num' entero o real expresado en letras. Si se especifican decimales, se imprimirán separados por la palabra 'CON' y si 'masculino'=1, se imprimirá como si las unidades de medida fueran de género masculino. Ej: letra (702.123, 2, 1) devolverá 'Setecientos dos con doce' y letra(702.123) devolverá 'Setecientas dos con ciento veintitrés' · grados sexagesimales y centesimales | ||||
double gms2gra (double gms) | · De grados sexagesimales a centesimales | ||||
double gra2gms (double gra) | · De grados centesimales a sexagesimales | ||||
cadena gra2a (double grados, long decimales=0, bool estandar=0) | · Devuelve una cadena de texto de la forma: DDº DD' DD,DD" | ||||
cadena gms (double grados, long decimales=0, bool estandar=0) | · OBSOLETA igual que gra2a | ||||
| |||||
bool EQ (double real1, double real2) | · Devuelve 'true' si los número 'real1' y 'real2' son iguales salvo un pequeño epsilon (~0.00001), si no devuelve 'false' | ||||
bool EQ0 (double real) | · Devuelve 'true' si 'real' es igual a '0' salvo un pequeño epsilon (~0.00001), si no devuelve 'false' | ||||
double red (double real, long dec=0) | · Devuelve un número igual a 'real', redondeado al número de decimales 'dec' indicado | ||||
double redcs (double real, long dec) | · Devuelve un número igual a 'real', pero especificando en 'dec' las cifras significativas | ||||
double recta (double x1, double y1, double x2, double y2, double x3) | · Devuelve coordenada y3 en la recta (x1,y1) hasta (x2,y2), dando el punto x3 | ||||
| |||||
Clislong bin2lislong (longbinary bin) | · Devuelve una lista de números enteros a partir de datos binarios | ||||
Clisdouble bin2lisdouble (longbinary bin) | · Devuelve una lista de números reales a partir de datos binarios | ||||
Clis lista (longbinary bin, tamano=4, desplaza=0) | · Devuelve una lista a partir de unos datos binarios 'bin'. · Dependiendo del 'tamano' en bytes, la lista devuelta será de un tipo u otro, (1) lista de char (2) lista de short (4) lista de long (8) lista de double. · El parámetro 'desplaza' nos indica desde que posición hemos de devolver la lista | ||||
| |||||
Dpun utm2geo (Dpun pun, long zona, long datum_index=1) | · Convierte coordenadas del punto 'pun' (x,y) en UTM de una zona y hemisferio, a coordenadas gográficas (longitud y latitud), datum_index: (1)ED50 (2)WGS72 (3)WGS84 (4)ETRS89 ... | ||||
Dpun geo2utm (Dpun pun, long zona, long datum_index=1) | · Convierte un punto 'pun' de coordenadas geográficas a UTM (inversa de utm2geo()) | ||||
Dpun utm2utm (Dpun pun, long zona1, long zona2, long datum_index1=1, long datum_index2=1) | · Cambia de huso, convierte las coordenadas x,y UTM del punto 'pun' de una zona/hemisferio a otro | ||||
Clis mgrs2utm (cadena coord_geograf) | · Devuelve una lista con los datos de referencia UTM [x_este, y_norte, zona, hemisferio], para una latitud y longitud | ||||
long elipsoide_num | · Número de elipsoides | ||||
cadena elipsoide_cod (long index) | · código del elipsoide en index | ||||
cadena elipsoide_res (long index) | · resumen del elipsoide en index | ||||
long elipsoide2index (cadena code) | · de código a index > 1..elisoide_num (0)no_existe | ||||
long datum_num | · Número de datum | ||||
cadena datum_cod (long index) | · código del datum en index | ||||
cadena datum_res (long index) | · resumen del datum en index | ||||
cadena datum_eli (long index) | · código del elipsoide del datum en index | ||||
long datum2index (cadena code) | · de código a index > 1..datum_num (0)no_existe | ||||
Dpun datum2datum (Dpun pun1, cadena datum1, cadena datum2) | · Convierte coordenadas geográficas del punto 'pun1' (longitud,latitud) en datum1 a geográficas en datum2 · Dpun datum2datum (Dpun pun1, long index1, long index2) // igual | ||||
obsoleto | |||||
obsoleto | · if (nombre == "datum2datum_utm1") return 1530; // obsoleto · if (nombre == "datum2datum_utm") return 1530; // obsoleto | ||||
| |||||
long rgb (long r, long g, long b) long rgb (cadena nombre | long htm) | · Devuelve el valor entero de un color en formato Windows (BGR). Los parámetros 'r', 'g' y 'b' nos indican los valores de componente rojo, verde y azul, que tienen que estar comprendidos entre 0 y 255. El parámetro 'nombre' acepta una cadena con el nombre de color en inglés o español de los contenidos en el archivo personalizable \Macros\CSV\colores.csv. El parámetro 'htm' acepta un valor entero con color HTM. | ||||
long rgb2htm (long rgb) | · Devuelve el valor entero de un color expresado en RGB en HTM | ||||
long htm2rgb (long htm) | · Devuelve el valor entero de un color expresado en HTM en RGB | ||||
long rgb_medio (long rgb1, long rgb2) | · Devuelve el valor entero de un color medio entre los colores RGB 'rgb1' y 'rgb2' | ||||
long rgb_claro (long rgb, long fac=16) | · Devuelve el valor entero de un color más claro que el color RGB 'rgb'. Cuanto mayor sea el factor 'fac' menor será la diferencia | ||||
long rgb_oscuro (long rgb, long fac=16) | · Devuelve el valor entero de un color más oscuro que el color RGB 'rgb'. Cuanto mayor sea el factor 'fac' menor será la diferencia; | ||||
long rgb_opuesto (long rgb) | · Devuelve el valor entero del color opuesto al especificado en el parámetro 'rgb' | ||||
Clislong rgb_serie (long rgb1, long rgb2, long num) | · Devuelve una lista de enteros que representan colores intermedios entre 'rgb1' y 'rgb2'. El parámetro 'num' nos da el número de colores que formarán la lista | ||||
| |||||
cadena arccamino (cadena archivo, cadena nombre="", cadena extensión="") | · Devuelve el camino completo (sin terminar en barra '\') incluyendo nombre de 'archivo'. Si se especifica un 'nombre' (que puede incluir extensión), se devuelve el camino concatenado con ese nombre y si se especifica 'extension', se pone esa. Ej: arccamino("c:\\trabajo\\arc.ing",datos.bic","txt") -> "c:\\trabajo\\datos.txt" | ||||
cadena arcnombre (cadena archivo, bool conextension=0) | · Devuelve el nombre del archivo sin extensión. Si 'conextensión'=1, devuelve nombre completo | ||||
cadena arcextension (cadena archivo, cadena extension="") | · Devuelve la extensión del archivo (sin punto). Si se especifica 'extensión', devuelve el camino completo o nombre de archivo, con la 'extensión' especificada | ||||
cadena arcrelativo (cadena archivo, cadena base=<director>) | · Devuelve un camino completo a partir de una dirección relativa, concatenendo el 'archivo'. Si no se especifica el parámetro 'base' se utiliza como 'base' la ubicación de la BD actual: director() | ||||
long arctamano (cadena archivo) | · Devuelve el tamaño del archivo en bytes | ||||
cadena arclee (cadena archivo, cadena modificadores="") | · Devuelve una cadena con el contenido del archivo. Modificadores: u0(utf-8) | ||||
int arcgraba (cadena archivo, cadena texto, cadena modificadores="") | · Graba en archivo el texto. Sólo válido para archivos de texto. Devuelve 1 si se produce un error. Modificadores: u0(utf-8) i0(graba solo sino es igual) | ||||
int arcagrega (cadena archivo, cadena texto) | · Agrega el texto al final del archivo. Devuelve 1 si se produce un error | ||||
int arccopia (cadena arc_antiguo, cadena arc_nuevo) | · Copia 'arc_antiguo' a 'arc_nuevo'. Devuelve 1 si se produce un error | ||||
int arcrenombra (cadena arc_antiguo, cadena arc_nuevo) | · Renombra 'arc_antiguo' como 'arc_nuevo'. Devuelve 1 si se produce un error | ||||
int arcelimina (cadena archivo) | · Elimina el archivo físicamente. Devuelve 1 si se produce un error | ||||
bool arcexiste (cadena archivo) | · Devuelve 1 si el archivo existe | ||||
bool arcgrabable (cadena archivo) | · Devuelve 1 si el archivo es s modificable (no está en modo sólo lectura, ni es del sistema, ni está bloqueado o en uso, ni pertenece a otro usuario de Windows, etc.) | ||||
| |||||
cadena dirdefecto (cadena subdir, cadena archivo, cadena extension="") | · Devuelve el nombre del directorio de la aplicación para concatenarle un nombre de 'archivo'. Opcionalmente se puede especificar la 'extension' por separado, y un subdirectorio 'subdir' enmedio | ||||
cadena dirpublico (cadena nombre="", cadena extensión="") | · Devuelve el nombre del directorio o carpeta de instalación de la aplicación, visible en la pestaña 'Herramientas> Opciones> Directorios'. · Si se trata de una instalación en red este será el directorio de la instalación en el servidor. · Si es una instalación monousuario este será el directorio de instalación de la aplicación en el disco local, y coincide con dirprivado() · Si se suministran los parámetros 'archivo' y 'extensión', devolverá estos dos argumentos concatenados al nombre del directorio en la forma: 'directorio\archivo.extensión' | ||||
cadena dirprivado (cadena nombre="", cadena extensión="") | · Devuelve el nombre del directorio o carpeta en la que funcionan los archivos particulares del programa. · Si se trata de una instalación en red, retorna el directorio particular de la instalación cliente · Si es una instalación monousuario retorna el directorio de instalación de la aplicación, y coincide con dirpublico() · Si se suministran los dos parámetros, los devolverá concatenados al nombre del directorio en la forma: directorio\archivo.extensión | ||||
cadena dirtemporal (cadena nombre="", cadena extensión="") | · Devuelve el nombre del directorio o carpeta utilizado para almacenar los archivos temporales. Por defecto es un directorio llamado \TEMPORAL que se encuentra en el directorio privado de instalación (es decir el directorio de la instalación cliente o el de la instalación monousuario). · Si se suministran los parámetros, los devolverá concatenados al nombre del directorio en la forma: \Temporal\archivo.extensión. Sin especificar extensión, se considera que está en el nombre, es decir: temporal("salida.txt") <-> temporal("salida", "txt") | ||||
bool direxiste (diretorio) | · Devuelve 1 si existe el directorio | ||||
int dircrea (cadena dir, long recursivo=0) | · Crea un directorio con la cadena 'dir' especificada. Si 'recursivo'=1 se crean todos los que no existan hasta el especificado. Devuelve 1 si da error | ||||
int direlimina (cadena dir, long como=0) | · Elimina el directorio 'dir' de ruta completa o máscara de archivos. Si 'como'=0 no elimina el directorio si contiene archivos (sólo si está vacío), 'como'=1 elimina directorio incluso con archivos, y 'como'=2 elimina recursivamente todos los archivos y subdirectorios (PELIGROSO!!) | ||||
Clis dircopia (cadena origen, cadena destino, bool recursivo=0, bool regraba=1) | · origen: archivo,directorio o máscara, destino: directorio | ||||
Clis dirlee (cadena dirmascara, long opciones=0) | · Devuelve una lista de listas con la información del contenido del directorio 'dirmascara' permitiendo opcionalmente filtrar con las 'opciones'. · El parámetro 'dirmascara', es una cadena de texto con el directorio donde se quieren buscar archivo o directorios. Las 'opciones' pueden ser: (0) archivos, (1) directorios, (2) ambos. · Se devuelve una lista por cada archivo y directorio, con los datos: [nombre.ext, es_directorio, tamaño_en_bytes, fecha_formato_AAAAMMDD, hora_modif_formato_HHMMSS]. Ejemplo de formato: [[documento.doc, 0, 322, 20040618, 105814], [ ], ] | ||||
Cliscadl dirmaslee (cadena dirmascara, long opciones=0) | · Devuelve una lista de los nombres de archivos y directorios contenidos en el directorio 'dirmascara' permitiendo opcionalmente filtrar con las 'opciones'. · El parámetro 'dirmascara', es una cadena de texto con el directorio donde se quieren buscar archivo o directorios. Las 'opciones' pueden ser: (0) archivos, (1) directorios, (2) ambos | ||||
| |||||
cadena inilee (cadena var) | · Devuelve el valor de la variable 'var' que existe en el contenido actual del archivo <programa>.INI. Las variables de estado del archivo de inicio se refieren sobre todo a valores de la ventana 'Opciones' y a estado de conmutadores en diversas ventanas | ||||
int inigraba (cadena var, cadena val) | · Graba el valor 'val' en la variable 'var' en el archivo <programa>.INI | ||||
long regprileel (cadena sec_nom, long def=0) | · Devuelve el valor entero de la variable 'sec_nom' que está contenida en el archivo <programa>.INI del registro de la aplicación | ||||
cadena regprilees (cadena sec_nom, cadena def="") | · Devuelve el valor de cadena de la variable 'sec_nom' que está contenida en el archivo <programa>.INI del registro de la aplicación | ||||
cadena regprilee (cadena sec_nom) cadena regprilee (cadena sec, cadena nom, cadena def="") | · Devuelve el valor de cadena de la variable 'sec_nom' que está contenida en el archivo <programa>.INI del registro de la aplicación. · Si utilizamos dos parámetros el método compondra el nombre de la variabla 'sec_nom' a partir de 'sec' y de 'nom'. · El parámetro 'def' será el valor devuelto si no se encuentra la variable 'sec_nom' en el archivo anteriormente comentado | ||||
int regprigraba (cadena sec_nom, cadena val | long val) int regprigraba (cadena sec, cadena nom, cadena val) | · Graba el valor del parámetro 'val' en la variable 'sec_nom' en el archivo <programa>.INI del registro de la aplicación. · Si se usa con tres parámetros, el nombre de variable 'sec_nom' se construirá a partir de dos parámetros 'sec' y 'nom' | ||||
| |||||
cadena diaedita (cadena tit, cadena rot, cadena def="", cadena b0="", cadena b1="", cadena b2="", cadena b3="") | · Muestra un diálogo con un campo editable, 'tit' es la cadena de texto que figurará en el título del diálogo, y 'rot' es la cadena de texto que figura como mensaje del diálogo. 'def' es el valor de defecto que aparece en el campo de edición. Se devuelve la cadena introducida en el campo de edición | ||||
int diapregunta (cadena tit, cadena rot="", cadena b0="", cadena b1="", cadena b2="", cadena b3="") | · Muestra un diálogo con el icono de PREGUNTA, 'tit' es la cadena de texto que figurará en el título del diálogo, y 'rot' el mensaje. | ||||
int diainforma (cadena tit, cadena rot="", cadena b0="", cadena b1="", cadena b2="", cadena b3="") | · Igual que diapregunta(), pero con el icono de INFORMA | ||||
int diaavisa (cadena tit, cadena rot="", cadena b0="", cadena b1="", cadena b2="", cadena b3="") | · Igual que diapregunta(), pero con el icono de AVISO | ||||
int diaerror (cadena rot="") | · Muestra un diálogo de error con el mensaje 'rot' y el título ERROR. Siempre devuelve el valor -1. Al pulsar el botón 'Cierra' continuará la ejecución del programa | ||||
bool inter (cadena rotulo="", int escabecera=0) | · Devuelve '1' si se ha pulsado el botón 'Interrupir' del diálogo de interrupción, sino devuelve '0' · Durante la ejecución de un programa se muestra siempre un diálogo de interrupción que permite parar la ejecución. En el caso de que el programa esté ejecutando un bloque de sentencias, no se interrumpirá su ejecución hasta la finalización del bloque. Para poder interrumpir la ejecución de un bucle, es necesario preguntar por el valor de retorno de este método. · Si se utiliza el 'rotulo', en vez de unos puntos suspensivos, aparecerá texto. Detrás de una línea que utilice inter("tex", 1) debe haber otro que imprima el valor que va progresando. Esta función es muy útil asociada a salir() · Si escabecera==1 el texto se rotulará en la cabecera. Si escabecera==2 el texto se rotulará en el título de la ventana. | ||||
| |||||
int winproceso (cadena cmd, long prsenta=0, long espera=0) | · Ejecuta proceso. Si la operación se realiza correctamente se devuelve '0'. El parámetro 'presenta' se utiliza para mostrar la ejecución visiblemente, y el parámetro 'espera', para parar la ejecución del script hasta que termine la ejecución del comando | ||||
int winejecuta (cadena exe, cadena dat="", long presenta=0, long espera=0) | · Ejecuta el programa 'exe' -con el camino completo- con el argumento 'dat'. El parámetro 'presenta' se utiliza para mostrar la ejecución visiblemente, y el parámetro 'espera', para parar la ejecución del script hasta que termine la ejecución del comando. Devuelve '0' si no se produce error. Por ejemplo: winejecuta ("c:\\windows\\notepad.exe", "c:\\temp\\doc1.txt") | ||||
int windatos (cadena archivo, cadena param="", cadena verbo="", bool presenta=1, bool espera=0) | · Abre el archivo 'arc' utilizando el programa, que según su extensión, tenga asociado en el registro de Windows. El parámetro 'par' se utiliza para pasar argumentos para la ejecución del programa. Las asociaciones de extensiones de archivos con los programas pueden modificarse o consultarse en las Opciones del Explorador de Windows | ||||
int notepad (cadena dat, long escontenido=0) | · Abre el archivo 'dat' en el bloc de notas de Windows. Si el parámetro 'escontenido=1', entonces el parámetro 'dat' se entienden como datos y no como nombre de archivo y son estos los que se visualizan en el bloc de notas | ||||
| |||||
long hoy () | · Devuelve la fecha actual del sistema en el que se ejecuta el programa, en formato AAAAMMDD | ||||
long hora () long hora (cadena hor | date hor) cadena hora (long hor, cadena fmt="") long hora (long hrs, long min, long seg) | · Sin parámetros devuelve un valor entero con la hora actual en formato HHMMSS · Si recibe un parámetro de tipo cadena o de tipo date, devuelve un valor entero representando el parámetro de entrada con el formato HHMMSS · Si recibe dos parámetros, el segundo por defecto es la cadena vacía, devuelve una cadena con la hora especificada en el parámetro 'hor' en el formato indicado en 'fmt'. · Si recibe tres parámetros, horas, minutos y segundos, devuelve un valor entero componiendo de la hora con estos tres parámetros | ||||
long horhrs ([long hor], [long hrs]) | · hor en formato HHMMSS · Sin parámetros devuelve las horas de la hora actual · Con un parámetro nos devuelve las horas de la hora 'hor' · Con dos parámetros devuelve la hora 'hor' sustituyendo las horas con 'hrs' | ||||
long hormin ([long hor], [long min]) | · Sin parámetros devuelve las horas de la hora actual · Con un parámetro nos devuelve los minutos de la hora 'hor' · Con dos parámetros devuelve la hora 'hor' sustituyendo los minutos con 'min' | ||||
long horseg ([long hor], [long seg]) | · Sin parámetros devuelve las horas de la hora actual · Con un parámetro nos devuelve los segundos de la hora 'hor' · Con dos parámetros devuelve la hora 'hor' sustituyendo los segundos con 'seg' | ||||
long h2hms (h) | · convierte horas con decimales a formato HHMMSS | ||||
long hms2h (hms) | · convierte formato HHMMSS a horas con decimales | ||||
double horas (long hora1, long hora2, long fecha1=0, long fecha2=0) | · Devuelve la diferencia en número de horas entre 'hora2' y 'hora1'. Si se trata de horas de distintos días, opcionalmente se puede especificar la 'fecha1' de 'hora1' y la 'fecha2' de la 'hora2' | ||||
long fecha () long fecha (long fec | cadena fec | date fec) cadena fecha (long fec, cadena fmt="dd/mm/aaaa") long fecha (long dia, long mes, long año) | · Sin parámetros devuelve un valor entero con la fecha actual AAAAMMDD · Si recibe un parámetro de tipo long, modifica la fecha actual devolviendo este parámetro como salida · Si recibe un parámetro de tipo cadena o de tipo date, devuelve un valor entero representando el parámetro de entrada con el formato AAAAMMDD · Si recibe dos parámetros, el segundo por defecto es la cadena vacía, devuelve una cadena con la fecha especificada en el parámetro 'fec' en el formato indicado en la cadena 'fmt', que admite los siguientes caracteres: · dd - número del día del mes; ddd - tres primeras letras del nombre del día de la semana: Lun, Mar, Mié, Jue, Vie, Sab, Dom.; dddd - nombre del día de la semana: Lunes, Martes, etc. · mm - número del mes de 1 a 12; mmm - tres primeras letras del nombre del mes: Ene, Feb, Mar, etc.; mmmm - nombre completo del mes: Enero, Febrero, etc. · aa - dos últimos dígitos del año; aaaa - año expresado con cuatro dígitos · Si recibe tres parámetros, día, mes y año, devuelve un valor entero componiendo la fecha con estos tres parámetros | ||||
long fecdia (long fec=0, long dia=0) | · Sin parámetros devuelve el día de la fecha actual en la aplicación (ventana Opciones) · Si sólo está presente el parámetro 'fec' nos devuelve el día de esta fecha · Si además está presente el parámetro 'dia', nos devuelve la fecha 'fec' sustituyendo el día por 'dia' | ||||
long fecmes (long fec=0, long mes=0) | · Sin parámetros devuelve el mes de la fecha actual en la aplicación (ventana Opciones) · Si sólo está presente el parámetro 'fec' nos devuelve el mes de esta fecha · Si además está presente el parámetro 'mes', nos devuelve la fecha 'fec' sustituyendo el mes por 'mes' | ||||
long fecano (long fec=0, long ano=0) | · Sin parámetros devuelve el año de la fecha actual en la aplicación (ventana Opciones) · Si sólo está presente el parámetro 'fec' nos devuelve el año de esta fecha · Si además está presente el parámetro 'ano', nos devuelve la fecha 'fec' sustituyendo el año por 'ano' | ||||
long fecsemdia (long fec) | · Devuelve el día de la semana de la fecha especificada en 'fec'. El valor '0' corresponde al lunes | ||||
long fecmesdias (long fec) | · Devuelve los días del mes especificado en la fecha 'fec' | ||||
cadena fecdianombre (long fec=<actual>, long abreviado=0) | · Devuelve el nombre del día de la semana especificado en la fecha 'fec', si no se especifica, el de la fecha actual del programa. Si 'abreviado'=1 devuelve la inicial del nombre de ese día | ||||
cadena fecmesnombre (long fec=<actual>, long abreviado=0) | · Devuelve el nombre del mes especificado en la fecha 'fec', si no se especifica, el de la fecha actual del programa. Si 'abreviado'=1 devuelve la inicial del nombre de ese mes | ||||
long fecdias (long fec1, long fec2, long fecestudio=0) | · Devuelve el número de días comprendidos entre las fechas 'fec1' y 'fec2' ambos incluidos. Si se especifica el argumento 'fecestudio', retornará el número de días del intervalo entre 'fec1' y 'fec2' comprendidos en el MES de la 'fecestudio'. Ej: fecdias (20070101, 20070202) devuelve el valor 33, mientras que fecdias (20070101, 20070202, 20070208) devuelve 2, que son los días entre el uno de enero y el dos de febrero comprendidos en el mes de febrero | ||||
long fecagrega (long fec, long dias, long meses=0, long anos=0) | · Devuelve la suma o resta de 'dias', 'meses' y 'años' a una fecha 'fec' dada en formato interno de fecha AAAAMMDD | ||||
long fecsemana (long fec) long fecsemana (long sem, long ano) | · Con un parámetro, devuelve el número de la semana en el año a la que pertenece la fecha 'fec' (la primera es la 1) · Con dos parámetros devuelve la fecha que corresponde al lunes de la semana 'sem' del año 'ano' | ||||
Clislong fecperiodo (cadena fec) cadena a fecperiodo (fec1,fec2) | · Si utilizamos el método con un parámetro de tipo cadena, nos devolverá un lista con dos valores enteros de fecha inicial y fecha final [fecini, fecfin] · Si utilizamos el método con dos parámetros de tipo long, nos devolverá una cadena con la descripción del periodo en el formato interno de la aplicación. El mismo formato de periodo se aplica al campo Periodo de la ventana Informes, diálogo de selección de informes y Propiedades de informes y procedimientos | ||||
cadena fecrotulo1 (long fec, long abreviado=0) | · Devuelve una cadena con el rótulo del día. El parámetro 'abreviado', permite reducir el formato a una letra para el día de la semana y día en formato DD/MM/AAAA. Ejemplo: fecrotulo1(20070101) devuelve el texto 'Lunes, 1 de Enero de 2007' y fecrotulo1(20070101, 1) devuelve 'S 01/01/2007' | ||||
cadena fecrotulo2 (long fec1, long fec2, long abreviado=0) | · Devuelve una cadena con el rótulo del periodo entre los dias, meses y años de ambas fechas, utilizando el parámetro 'abreviado', se acortan las palabras lo más posible (día de la semana, mes con tres letras, etc.). Ejemplo: fecrotulo2(20070106, fecagrega(20070106, 4)) devuelve 'Del 6 al 10 de Enero de 2007' y los mismos datos con el parámetro 'abreviado=1' devuelve '6-10 Ene 2007' | ||||
long fechor2fec (double fechor) | · Devuelve la fecha (parte entera de un campo de tipo fecha-hora), en formato entero: AAAAMMDD. Los datos de tipo fecha-hora son números reales con formato: AAAAMMDD.HHMMSS | ||||
long fechor2hor (double fechor) | · Devuelve la hora (parte decimal de un campo de tipo fecha-hora), en formato entero: HHMMSS. Los datos de tipo fecha-hora son números reales con formato: AAAAMMDD.HHMMSS | ||||
double fechor () double fechor (cadena hor | date hor) cadena fechor (double hor) double fechor (long fec, long hor) | · Sin parámetros devuelve un valor double con la fecha y hora actual AAAAMMDD.HHMMSS · Si recibe un parámetro de tipo double, devuelve una cadena formateando este parámetro · Si recibe un parámetro de tipo cadena o de tipo date, devuelve un valor double representando el parámetro de entrada con el formato AAAAMMDD.HHMMSS · Si recibe dos parámetros, fecha y hora, devuelve un valor double componiendo la fecha y hora con estos dos parámetros con el formato AAAAMMDD.HHMMSS | ||||
| |||||
void incluir (cadena cod_inf) | · Realiza una llamada al método 'incluir' del objeto 'comun' de la clase Cbas. Es decir, incluye el código Javascript en la posición de la función, de un concepto de tipo informe, con código 'cod_inf' de la base de datos comun | ||||
void espera (long mseg) | · Espera un intervalo de tiempo de 'mseg' milisegundos. Útil cuando se está realizando una operación que puede requerir que otra aplicación, proceso externo o archivo esté preparado, para detener el script | ||||
void error (cadena rotulo="") | · Finaliza la ejecución del programa con mensaje de error especificado en 'rotulo'. Si no es especifica, se muestra en el diálogo el último mensaje de error del script que se almacenó en la variable 'erro' | ||||
cadena erro () | · Devuelve la cadena de caracteres que almacena el último mensaje de error que se ha producido en la ejecución el programa xjs | ||||
void salir (bool sinterminar=0) | · Finaliza la ejecución del programa. Si 'sinterminar'=1, en vez de terminar la ejecución del informe sin mostrar nada, mostrará lo que lleve procesado hasta el momento de salir | ||||
void write (cadena cad="") | · Graba el texto 'cad' en el archivo \temporal\presenta.txt. Todas las sentencias write de la ejecución de cada informe se añaden una a continuación de otra. Cuando finaliza la ejecución del script, se abre el archivo presenta.txt utilizando el Bloc de notas de Windows | ||||
void writeline (cadena cad="") | · Igual que el método anterior 'write', solo que además, graba un retorno de carro y nueva línea al final de cada 'cad' que recibe como parámetro | ||||
void prin (cadena cad) | · Imprime 'cad' en la ventana de depuración con un retorno de línea incluido, es decir, imprime cada salida en líneas separadas. Admite imprimir varias cadenas separadas por tabuladores si se pasan como parámetros separados por comas (,) | ||||
void debug () | · Activa el modo de depuración para poder consultar variables y trazar el flujo en la pestaña DEBUG de edición de informes y procedimientos | ||||
void DEBUG () | · Sinónimo de debug() · Este método detiene la ejecución del programa y abre el diálogo de depuración. En la línea Comando o variable se pueden especificar: una sentencia válida de JavaScript incluyendo las extensiones, o bien un nombre de variable. Al hacer clic en 'Acepta' se ejecutará la sentencia, y su valor de retorno si lo hubiera se mostrará en el visor del diálogo, si se teclea un nombre de variable aparecerá en el visor el valor actual de esa variable. · Si teclea por ejemplo Math.E, al hacer clic en Acepta aparecerá en el visor el número 2.71828182845905 que es el número de Euler. · El depurador guarda un histórico de los comandos ejecutados a los que se puede acceder con los botones 'Anterior' y 'Siguiente' | ||||
cadena appnombre () | · Devuelve el nombre de la aplicación como 'Ingrid' | ||||
cadena appversion () | · Devuelve la versión de la aplicación con 3 dígitos como '5.3.8' | ||||
cadena appextension () | · Devuelve la extensión de la aplicación con tres letras como 'ing' | ||||
void imparcpdf (cadena arcpdf) | · Lanza a impresora PDF instalada con Ghostscript el archivo .EPS indicado | ||||
void imparcdes (cadena arcdes) | · Lanza a una impresora destino concreta el archivo indicado | ||||
cadena dbf_lee (cadena dbf_arc) | · Devuelve una cadena de texto multilínea con todos los registros y campos del archivo 'dbf_arc' de BD formato DBF, cuya sintaxis es: · D[BF] | [id] | [fec] | [dataoffset] | [regtam] | [regnum] | [camnum] | [blotam] | · C[nn] | tip(CharDateNumberMemoFloat) | len | dec | nom | · R[nn] | {dato (si no M relleno, si M \r\n a \\n ) |} | ||||
int dbf_graba (Clis lista, cadena dbf_arc) | · Graba en un archivo con especificación .DBF (base de datos), los campos de la 'lista' en el archivo | ||||
long escest (double escala, bool cercana=0) | · Devuelve la escala estándar; si no cercana la primera (1, 5, 10, 25, 50, 100, 250, 500, 1.000, 2.500, 5.000, 10.000, 25.000, 50.000, 100.000, 250.000, 500.000, ...) | ||||
long escnor (double escala, bool cercana=0) | · Devuelve la escala normalizada (binaria); si no cercana la primera (1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1.024, 2.048, 4.096, 8.192, 16.388, 32.768, 65.536, 131.072, 262.144, 524.288, ...) | ||||
long escnor2 (double metros, long puntos, bool cercana=0) | · Devuelve la escala normalizada (binaria) donde se puede dibujar "metros" en una ventana de "puntos" · // escnor2(metros,puntos) == escnor(metros / puntos * puntos_por_metro_en_ventana); | ||||
long escnorn () | · Devuelve el número de escalas normalizadas existentes: con factor de milímetros devuelve 24 | ||||
long escnorl (long esc_nor) | · Devuelve la escala en unidades de la normalizada esc_nor (nº entero tras el "1:"). Ej: escnorl(22)= 50000000 | ||||
| |||||
cadena clave_maquina | · clave de máquina | ||||
cadena clave_licencia | · clave de licencia | ||||
cadena clave_acceso | · clave de acceso | ||||
| |||||
int replica_crea (cadena arc1, cadena arc2, cadena arc12, bool solo_diferente=false) | |||||
int replica_recrea (cadena arc1, cadena arc12, cadena arc2b) | |||||
int replica_compara (cadena arc1, cadena arc2) | |||||
| |||||
Cliscadl bases (cadena archivo) | · Devuelve una lista con el nombre de las bases de datos disponibles en el servidor que se especifica en el archivo. Este método es válido para los SGBD cliente-servidor | ||||
int base_elimina (cadena archivo) | · Elimina la base de datos indicada por el archivo. Devuelve 0 si la acción se realiza correctamente | ||||
| |||||
Cimp Cimp (cadena cni="", cadena mod="", long colnum=1, long colmar=0, long tipcab=0) Cimp Cimp (cadena cni="", long colnum=1, long colmar=0, long tipcab=0) | · Crea un objeto de manejo de tablas de impresión. · El parámetro 'cni' nos indica el archivo de configuración de impresora que utilizaremos. · El parámetro 'mod' nos especifica una serie de modificadores que afectan a la configuración de impresora propuesta. Estos modificadores son: ORIENTACIÓN (v) vertical o (h) horizontal), TAMAÑO (A0), (A1), (A2), (A3), (A4), (A5) o (A6) y COLOR (0) monocromo o (1) a color. · El parámetro 'colnum' nos indica el número de columnas de cada hoja impresa el parámetro 'colmar' nos indica el margen de separación entre cada columna y el parámetro 'tipcab' nos indica si la cabecera tendrá el tamaño de columna (0) o de página (1) | ||||
Cbas Cbas () Cbas Cbas (long que | cadena archivo) | · Devuelve un objeto manejador de base de datos · Si no pasamos ningún parámetro, nos devuelve una referencia a la BD actual · El parámetro 'que' puede ser 0 ó 1. Con el '0' nos devuelve una referencia a una copia de la BD actual y con el '1' una referencia a la BD que tengamos en el paralelo · El parámetro 'archivo' nos abre una nueva BD localizada en esa ruta o conexión | ||||
Cbas comun () | · Crea un objeto Cbas pero con la BD común como BD de referencia. Esta base de datos se especifica en la ventana Opciones/Configuración de la aplicación | ||||
Carc Carc () | · Crea un objeto de manejo de archivos a bajo nivel | ||||
Ccsv Ccsv () | · Crea un objeto de manejo de archivos *.csv (formato textual de Excel) | ||||
Cima Cima () | · Crea un objeto de manejo de imágenes con XImage | ||||
Cgra Cgra () | · Crea un objeto de manejo de imágenes con GDI+ | ||||
Cmapi Cmapi () | · Crea un objeto de manejo de mensajería o correo electrónico | ||||
Cftp Cftp () | · Crea un objeto de manejo del protocolo ftp para envío de ficheros desde/a servidores en internet | ||||
Chttp Chttp () | · Crea un objeto de manejo del protocolo http para recepción de página web | ||||
Czip Czip () | · Crea un objeto de manejo de archivos de compresión .zip | ||||
Cgrf Cgrf () | · Crea un objeto de gráficas estadísticas | ||||
Chor Chor (double h) Chor Chor (long h, long esintervalo=0) Chor Chor (long h, long m, long s, long esintervalo=0) | · Crea un objeto de manejo de horas e intervalos horarios. · Si pasamos un parámetro real 'h', asumimos que vamos a trabajar con intervalos horarios · Si pasamos un parámetro entero 'h', trabajaremos con intervalos o con horas dependiendo del valor del parámetro opcional 'esintervalo' · Si pasamos un mínimo de tres parámetros, horas 'h', minutos 'm' y segundos 's', tenemos también la opción de elegir trabajar con intervalos o con horas | ||||
Ctrasgo Ctrasgo () | · Crea un objeto de manejo de archivos ingra de traducción de rótulos | ||||
Cdxi Cdxi () | · Crea un objeto de dibujo 2D | ||||
Cgli Cgli () | · Crea un objeto de dibujo 3D | ||||
Cpun Cpun (Cpun p | Dpun p | cadena str | Clislong lis) Cpun Cpun (long x, long y) | · Crea un punto de coordenadas internas (números enteros) · El parámetro 'str' tiene el formato "x|y", en donde x,y son números enteros · El parámetro 'lis' contine una lista de dos valores números enteros (x,y). También se puede asignar un punto (en coordenadas internas o reales) | ||||
Crec Crec (Crec r | Drec r | cadena str | Clis lis) Crec Crec (Cpun p1, Cpun p2) Crec Crec (long x1, long y1, long x2, long y2) | · Crea un rectángulo de coordenadas internas (números enteros) · El parámetro 'str' tiene el formato "x1|y1|x2|y2", en donde x1,y1,x2,y2 son números enteros · El parámetro 'lis' contiene una lista de cuatro valores números enteros (x1,y1,x2,y2). También se puede asignar un recuadro (en coordenadas internas o reales) | ||||
Cpunl Cpunl (Cpunl pl | Dpunl pl | cadena str | Clis lis) Cpunl Cpunl (Cpun p1, Cpun p2, ...) Cpunl Cpunl (long x1, long y1, long x2, long y2, ...) | · Crea un objeto lista de puntos de coordenadas internas (números enteros) · El parámetro 'str' tiene el formato "x1|y1|x2|y2...", lista de pares de nºs enteros separados por barra vertical (|) · El parámetro 'lis' contiene una lista de pares de valores números enteros [x1,y1,x2,y2]... También se puede asignar otra lista de puntos (en coordenadas internas o reales) | ||||
Dpun Dpun (Cpun p | Dpun p | cadena str | Clis lis) Dpun Dpun (double x, double y) | · Crea un punto de coordenadas en metros (números reales) · El parámetro 'str' tiene el formato "x|y", en donde x,y son números reales · El parámetro 'lis' contine una lista de dos valores números reales (x,y). También se puede asignar un punto (en coordenadas internas o reales) | ||||
Drec Drec (Crec r | Drec r | cadena str | Clis lis) Drec Drec (Dpun p1, Dpun p2) Drec Drec (double x1, double y1, double x2, double y2) | · Crea un rectángulo de coordenadas en metros (números reales) · El parámetro 'str' tiene el formato "x1|y1|x2|y2", en donde x1,y1,x2,y2 son números reales · El parámetro 'lis' contiene una lista de cuatro valores números reales (x1,y1,x2,y2). También se puede asignar un recuadro (en coordenadas internas o reales) | ||||
Dpunl Dpunl (Cpunl pl | Dpunl pl | cadena str | Clis lis) Dpunl Dpunl (Dpun p1, Dpun p2, ...) Dpunl Dpunl (double x1, double y1, double x2, double y2, ...) | · Crea un objeto lista de puntos de coordenadas en metros (números reales) · El parámetro 'str' tiene el formato "x1|y1|x2|y2...", lista de pares de nºs reales separados por barra vertical (|) · El parámetro 'lis' contiene una lista de pares de valores números reales [x1,y1,x2,y2]... También se puede asignar otra lista de puntos (en coordenadas internas o reales) | ||||
Cado ado | · clase de acceso a datos | ||||
| |||||
programa () | · Ahora dirpublico | ||||
publico () | · Ahora dirpublico | ||||
director () | · Ahora dirdefecto | ||||
temporal () | · Ahora dirtemporal | ||||
filcamino () | · Ahora arcamino | ||||
filnombre () | · Ahora arcnombre | ||||
filextension () | · Ahora arcextension | ||||
filrelativo () | · Ahora arcrelativo | ||||
impresor () | · Ahora Cimp | ||||
ineftp () | · Ahora Cftp | ||||
dibgrf () | · Ahora Cgrf | ||||
dibima () | · Ahora Cima | ||||
tiehor () | · Ahora Chor | ||||
base () | · Ahora Cbas | ||||
RGB () | · Ahora rgb() | ||||
ESCNORN () | · Ahora escnorn() | ||||
ESCNORL () | · Ahora escnorl() |
| ||||
inicia_access (mdbarc, mdbmdw, mdblog, mdbpwd, edicion, creasino) | · Establece conexión con base de datos access | |||
inicia_sql (bas, ser, usu, pwd) | · Establece conexión con base de datos SQL Server | |||
| ||||
copia (AdoXD &ado2, bool nolog) | · Copia base de datos 'ado2' sobre base de datos actual. Si 'nolog' es verdadero, y si hubiera errores en la copia, no los presentaría en el bloc de notas |
Para el manejo habitual de archivos y directorios ya hay definidas funciones en la clase general ingra. Este objeto sirve para leer y grabar archivos (incluso binarios que no es posible manejar con variables JavaScript), para operaciones muy especiales como abrirlos en modo no exclusivo, o cargarlos y grabarlos por partes (por ejemplo para tamaños enormes), agregar un archivo a otro, etc.
Todas las funciones operan con el archivo en modo exclusivo a menos que se especifique 'compartido'=1
bool leer (cadena arc, bool compartido=0) | · Lee el archivo 'arc' y devuelve una variable objeto archivo con el contenido. El archivo debe existir |
bool grabar (cadena arc, bool compartido=0) | · Graba el contenido del objeto en el archivo de nombre 'arc'. El archivo debe existir |
bool crear (cadena arc, bool compartido=0) | · Crea un archivo en blanco a partir de un objeto. El archivo no puede existir ya |
bool abrir (cadena arc, bool compartido=0) | · Abre el archivo para us utilización. Si no existe se crea |
bool agregar (cadena arc, bool compartido=0) | · Añade al final del archivo 'arc', el contenido del objeto. Si no existe se crea |
bool truncar (cadena arc, bool compartido=0) | · Trunca el archivo 'arc' con el contenido del objeto. Si no existe se crea |
bool cierra () | · Cierra y libera el archivo en el S.O. |
cadena lee () | · Devuelve una línea del objeto archivo |
bool final() | · Devuelve 1 si se ha llegado al final del archivo con el cursor del método lee() |
bool graba (cadena datos) | · Graba al final del archivo el texto de 'datos' |
bool linea (cadena datos) | · Lo mismo que graba() pero añadiendo detrás un carácter de fin de línea |
fec = fecha (0|1|2) | · fecha del archivo: (0)mod (1)acc (2)cre |
bool fechas (fechor mod, acc, cre) | · pone fechas al arhivo, si una fecha es 0 no la cambia |
bool lee (Cadena archivo) | · Lee el 'archivo'. Devuelve 0 si la operación se ha realizado correctamente |
long num () | · Devuelve el número de líneas del archivo actual. |
Cadena ten (long linea, long columna) | · Obtiene el dato situado en la 'linea' y 'columna' indicada como parámetros. |
Asignado a una variable, crea un objeto de tipo gráfico estadístico, al que se le pasan los datos a representar, y el formato. Permite mostrar gráficos de líneas, de barras y de tarta.
Otras opciones para gráficas son: utilizar el objeto ActiveX de automatización de Excel (peor) y utilizar Cdxi.grafico() (mejor que Cgrf). Hay script de ejemplo de las 3 formas de imprimir gráficas
| ||||
long tipo=1 | · Tipo de gráfica: (1)Líneas, (2)Barras (3)Tarta | |||
bool encolor=1 | · Modo color o escala de grises | |||
bool rotval=1 void rotval (bool tipo, long letra) | · Rotular valores de la serie en el gráfico (en puntos de los de líneas, la cima de las barras, dentro de los sectores de los circulares...). El tipo de rótulo depende del tipo de gráfica: TODOS:(0)Sin rotulo, (1)Valores, LÍNEA:(2)nº de la serie, (3)primero y último, TARTA:(4)porcentaje | |||
bool leyenda=1 void leyenda (bool mostrar, long letra) | · Imprimir o no la leyenda. Como función admite el parámetro 'letra' a utilizar de entre las 5 definidas en el impresor Cimp | |||
bool guiashor=1 | · Imprimir o no líneas en eje horizontal, con marcas | |||
bool guiasver=1 | · Imprimir o no líneas en eje vertical, con marcas | |||
long espacio=0 | · Espacio libre (mm) alrededor de los ejes del gráfico, entre rótulos, leyenda... | |||
bool acero | · Permite poner el origen de los gráficos de barra con referencia al valor cero, de forma que si hay valores negativos salgan por encima y debajo del cero. (Sólo se aplica a tipo=2) | |||
long rotejetam | · Tamaño de los rótulos de los ejes (en puntos) | |||
cadena rotuloG="" | · Título de la gráfica | |||
cadena rotuloX="" | · Nombre del eje de abscisas, con la letra con la que se imprime el campo donde va el gráfico | |||
cadena rotuloY="" | · Nombre del eje de ordenadas | |||
cadena colorfondo= "FFFFFF" | · Color del fondo del gráfico (defecto blanco). Este color afectará únicamente a la zona en la que se dibuja el gráfico, mientras que el color de fondo para la leyenda, título y resto de los elementos se establece mediante el modificador del campo en el que se muestra el gráfico | |||
bool ejeymax | · Valor forzado máximo para el eje y | |||
| ||||
void categorias (Cliscad cat) | · Array de cadenas con la lista de categorías. Estas categorías se mostrarán en el eje horizontal en los gráficos de tipo 1 y 2, y en la leyenda en los gráficos de tipo 3 | |||
void serie (cadena nom, Clis array_val) | · Define los valores para cada serie de las definidas con categorías(). Cada serie recibe el nombre 'nom', y los valores incluidos en la matriz 'array_val' | |||
void libera () | · Libera objeto e inicializa el objeto gráfico estadístico poniendo en blanco todos sus datos de categorías, serie, color, leyenda... de forma que se puede utilizar otra vez el mismo objeto en memoria asignándole distintos datos |
Muchas funciones tienen parámetros de tipo 'tipcolor'. Se admiten 4 formatos de dato: función- rgb(0,255,255), hexadecimal- 0x2233FF, decimal- 234234, nombre en español o inglés- "azul" o "blue"
| |||||
Cdxi arc (cadena nom_arc) | · Carga en un objeto el archivo 'nom_arc' que admite los formatos vectoriales soportados por la aplciación: .dxi, .dxf, .dgn, .shp | ||||
| |||||
Cdxicap capa (long capi | cadena capc, cadena capres="") | · Crea definición de capa por el identificador 'capi' o el código 'capcod'; opcionalmente se puede poner la descripcióin 'capres' | ||||
long capn | · Número de capas del objeto Cdxi | ||||
Cdxicap capl (long pos) | · Devuelve un objeto capa por el orden en la lista de capas | ||||
long cap_busca (cadena capc) | · Devuelve el identificador por un código de capa. Si no se encuentra, devuelve 0 | ||||
int cap_elimina (long capi | cadena capcod, bool solocontenido=0) | · Elimina capa con identificador capi, si 'solocontenido'=1, mantiene la definición de capa | ||||
Crec cap_limite (long capi | cadena capcod) | · Rectángulo límite de las entidades de la capa | ||||
Clis serie (long pasos, tipcolor col1=0, tipcolor col2=0) | · Devuelve una lista de objeto capa Cdxicap creadas con los atributos de color de un degradado entre el color1 y el color2 con el número de pasos (y cardinal) 'pasos' | ||||
| |||||
Cdxiblo bloque (long bloi | cadena bloc, cadena blores="", cadena blopro="") | · Crea definición de un bloque por el identificador 'bloi', o código 'blocod'. Se puede especificar una descripción 'blores' y unas propiedades 'blopro' aunque no se deben usar porque modifican el bloque pero no lo definen (por ejemplo con un factor o dimensión), por lo que el bloque tendría otras características que las visibles | ||||
long blon | · Número de bloques del objeto Cdxi | ||||
Cdxiblo blol (long num_blo) | · Devuelve un objeto bloque por el orden en la lista de bloques | ||||
long blo_busca (bloc) | · Devuelve el identificador por un código de bloques. Si no se encuentra, devuelve 0 | ||||
int blo_elimina (long bloi | cadena bloc, bool soloreferencias=0) | · Elimina bloque con identificador bloi, si soloreferencias=1, mentiene la definición de bloque y elimina sólo las inserciones | ||||
long blo_importa (Cdxi o archivo_dxi, [blocod o bloide]) | · Importa el bloque definido por un objeto o archivo dxi sobre el bloque definido por un código o identificador, si no hay identificador definido creo un nuevo bloque. Retorna el identificador del bloque creado o redefinido | ||||
bool blo_exporta (blocod o bloide, Cdxi o archivo_dxi) | · Exporta el bloque definido por un código o identificador a un objeto o archivo dxi · Cdxi blo_exporta (blocod o bloide) // Exporta el bloque definido por un código o identificador a un nuevo objeto dxi | ||||
| |||||
cadena orgcap | · Obtiene o pone la organización de capas: { "niv(0..7) | abi(0|1) | ico | ide | nombre | \r\n" } | ||||
long orgcapn | · Devuelve el número de ramas (carpetas de organización) y hojas (capas) que tiene la estructura de árbol de ventana de la ventana Mapa> Capas en el dxi actual. La organización de BD se guarda en el registro cab.tabmap_orgcap | ||||
Cdxiorg orgcapl (long ind_org) | · Devuelve un objeto de estructura de árbol con los datos de la capa o carpeta 'ind_org' (no el ide de tabla MAPCAP). Cada registro contiene: [] | ||||
cadena orgblo | · Obtiene o pone la organización de bloques: { "niv(0..7) | abi(0|1) | ico | ide | nombre | \r\n" } | ||||
long orgblon | · Devuelve el número de ramas (carpetas) y hojas (bloques) que tiene la estructura de árbol de la ventana Mapa> Bloques en el dxi actual. La organización de BD se guarda en el registro cab.tabmap_orgblo | ||||
Cdxiorg orgblol (long ind_org) | · Devuelve un objeto de estructura de árbol con los datos del bloque o carpeta 'ind_org' (no el ide de tabla MAPBLO) | ||||
| |||||
long seln | · Número de entidades seleccionadas en interface | ||||
Cdxient sell (long num) | · Devuelve un objeto ente con el orden 'num' de entre los seleccionados en ventana | ||||
long entn (long ordena) | · Monta todas la entidades del dxi y las ordena: (0)texto (1)resumen (2)area (3)área_calculada; retorna el número de entidades | ||||
Cdxient &entl (long pos) | · Devuelve la entidad en la posición pos de las montandas por entn | ||||
| |||||
long tip () | · Devuelve el tipo de dxi: (0),(1),(2) | ||||
Cpun ref | · Referencia absoluta del dxi, es un Cpun cuyas unidades representan kilómetros, a partir del cual se considera que están las coordenadas relativas del dxi. Atributo de lectura y escritura | ||||
Crec rec | · Recuadro de los límites relativos del dxi en coordenadas internas (mm, cm...) dependientes del factor. Atributo de lectura y escritura | ||||
Drec rec_m | · Recuadro de los límites relativos del dxi en metros. Atributo de lectura y escritura | ||||
long fac | · Factor que multiplicado por las unidades internas da las externas en metros reales: factor*unidades_int= metros Ej: 1000 para milímetros, 100 para cms... | ||||
clip () (entidad) | · quita o pone recorte | ||||
| |||||
int lee (cadena arcdxi, cadena capas_si="", cadena capas_no="") | · Abre un archivo de disco en formato dxi, especificando el camino completo. Opcionalmente se puede indicar una cadena con las capas a importar separadas por punto y coma (;), y otra cadena 'capas_no', con las capas a ignorar | ||||
int graba (cadena dxiarc, cadena modif="") | · Graba a un archivo en formato dxi, el objeto dxi en memoria, puede llevar los siguientes modificadores en 'modif': · x<puntos_en_horizontal> y<puntos_en_vert> z<bits_de_color: (2)blanco/negro (8)paleta 256 colores (32)Truecolor> q<porcentaje_compresión_calidad> c<tipo_compresión_TIF: (0)auto (1)sin (2)Huffman (3)CCITT-G3 (4)CCITT-G4 (5)LZW (6)JPEG (7)NeXT> · Los tres primeros se usan en un volcado a una imagen bitmap, para dar las dimensiones y nº de colores. Los dos siguientes son dependientes del formato de archivo (que se especifica por la extensión): · Al .JPG le es aplicable la calidad; un valor óptimo es el de defecto "q85" que indica una compresión de un 15%, lo que tiene poca pérdida de calidad · Al .TIF le es aplicable la compresión, con valor de defcto "c0". El 'modif' "q" sólo es aplicable a TIF si "c5" ó "c6". | ||||
int copia (Cdxi dxi2, Crec desplaza=0) | · Copia el objeto actual a otro dxi2, opcionalmente indicando un desplazamiento en forma de recuadro Crec con la suma o resta horizontal y vertical del origen del dxi2. Por defecto sin desplazamiento | ||||
int agrega (Cdxi dxi2, Crec desplaza=0) | · Añade información de un objeto dxi2 al objeto utilizado, opcionalmente con un desplazamiento en forma de Crec, igual que copia() | ||||
void calcula () | · Recalcula límites del dxi. Función obligatoria para que los límites de geos, capas, etc estén bien calculados al usar otras funciones en las que se requiere el cálculo de límite de todas las entidades o de capas. por ejemplo la función dentro(). En general se debe usar siempre después de dibujar en un dxi (líneas, bloques, crear capas, recortar, agregar un análisis...) y antes de presentar los resultados (por ejemplo imprimiendo el dxi o exportando a archivo) | ||||
void libera () | · Limpia memoria eliminando objeto por completo con todos sus objetos dependientes (bloques, capas...) | ||||
int recorta (Crec zom=0 | Cpunl zom, bool incompletos=0) | · Recorta el dxi por las coordenadas internas del rectángulo 'rec', o bien por el límite máximo del objeto. Si incompletos==-1, elimina las entidades que no están completas dentro del recuadro, con incompletos==1 recorta líneas con incompleto==2 recorta líneas y elimina bloques; retorna número de recortes | ||||
int compacta (bool no_usados=1) | · Elimina capas y bloques no utilizados (a menos que se use con no_usados=0), borra geos sin información y recalcula límites | ||||
void limpia_escalas () | · Elimina todos los geos escalados (a los que apuntan otros geos). Esta función también la realiza compacta() | ||||
| |||||
bool mfon=0 | · Fondo en color blanco (por defecto es negro) | ||||
bool mbyn=0 | · No mostrar colores, sólo blanco/negro (defecto en color) | ||||
bool mbro=1 | · Modo relleno: (0)sin_relleno (1)con_relleno (2)entrelazado (2)doble_pasada | ||||
long mxyz=0 | · Modo de visualización de coordenadas: (0)Absolutas (1)A origen (2)Relativas (3)Geográficas | ||||
bool meje=0 | · Visualizar ejes con las características definidas en pestaña Cabecera | ||||
long mtex=1 | · Modo de visualización de textos, desde con máxima calidad, pasando por recuadrado envolvente, hasta no dibujar. Los valores son respectivamente: 0,2,7,3,5,1 | ||||
long mblo=1 | · Visualización de bloques, mismos valores que mtex | ||||
long marc=1 | · Visualización de círculos, mismos valores que mtex | ||||
long mcua=1 | · Visualización de rectángulos (recuadros de texto, mapas y ortofotos), mismos valores que mtex | ||||
obsoleto = mcir | |||||
obsoleto = mrec | |||||
bool msel=0 | · Mostrar números de vértices de la selección (selección extendida) · if (nombre == "ment") return 221; // bool ment=1 // OBSOLETO Rellena entrelazando la referencia de fondo. Con 0 no dibuja referencia externa. El orden es: 1ºsolidas, 2ºdifuminadas, 3ºnormales · if (nombre == "mdob") return 223; // bool mdob=0 // OBSOLETO Rellena con doble pasada (redibujando contornos de las capas bajo capas rellenas sólidas) | ||||
long mcal=0 | · Incremento de calidad (positivo o negativo) para forzar visualización de escalas normalizadas superiores o inferiores a cada zoom | ||||
| |||||
long mtra=0 | · Modo trazado, activado permite ir viendo los datos de carga y descarga en memoria de los geos y entes | ||||
long minc=0 | · Modo copia con texto incremental. Controla el hacer autoincremental el nº del atributo de una entidad que se está copiando dede interface de ventana | ||||
long maju=1 | · Modo ajusta a punto cercano (imán). Controla la forma en la que al editar desde interface de ventna los puntos se acercan exactamente al punto que cae en el tamaño del cursor | ||||
long mpis=5 | · Tipo de pista a visualizar: (0)Sin pistas (1)Atributo (2)Longitud (3)Superficie (4)Referencia (5)Foto | ||||
long msic=0 | · Modo de conexión a internet: (0*)sinconexion (1)con_cache (2)directa | ||||
long muso=30 | · obsoleto, utilizar huso | ||||
long huso=30 | · HUSO (zona y hemisferio), por defecto 30 (UTM del centro de España), admite número de huso positivo y negativo | ||||
long datum=1|"ED50" | · DATUM (elipsoide y proyección), por defecto (1)ED50 (2)WGS72 (3)WGS84 (4)ETRS89 | ||||
long mman=0 | · Límite de página manual. Permite forzar los límites por fuera o dentro del máximo recuadro de entidades que contiene (más los márgenes mari(), mare()) | ||||
cadena imafil="" | · Filtro de referencias ortos, admite un nombre de filtro de los espeficados para el objeto Cima, con sus parámetros, el filtro se aplicac en tiempo real a las ortofotos | ||||
cadena imadir="" | · Camino relativo o absoluto al dxi, cuando es un archivo, con el directorio donde se encuentran los archivos .dxi a los que hacen referencia los entes de tipo Mapa (referencias externas) del dxi | ||||
cadena imadir2="" | · Camino absoluto y link desreferenciados | ||||
long mari=0 | · Margen interno del perímetro máximo del dibujo al 'papel', en porcentaje del tamaño total del dxi | ||||
long mare=0 | · Margen externo del 'papel' a la ventana, en porcentaje del tamaño total del dxi | ||||
long ejex=0 | · Distancia horizontal entre ejes en metros (para mostrar con el modificador meje=1) | ||||
long ejey=0 | · Distancia vertical entre ejes en metros | ||||
long ejet=0 | · Tamaño en metros de las cruces intersección de ejes (por defecto contínuos) | ||||
long emin=0 | · Escala global mínima del dxi (aplicable para incorporar en BD como mapa y escalar); desde interface no se puede modificar | ||||
long emax=0 | · Escala global máxima del dxi | ||||
| |||||
int var_elimina (Cdxi dxi, cadena var) | · Elimina la variable 'var' de todas las entidades del Dxi donde aparezca | ||||
int var_acapas (Cdxi dxi, cadena var) | · Crea una capa en el dxi, con el código de la variable, y las entidades asociadas a ella | ||||
int var_amapas (Cdxi dxi, cadena var) | · Crea un mapa en el dxi, con el código de la variable, y las entidades asociadas a ella | ||||
| |||||
Dpun utm2geo (Dpun pun, long zona=huso, long datum=datum) | · Convierte coordenadas del punto 'pun' (x,y) en UTM de una zona y hemisferio, a coordenadas gográficas (longitud y latitud) | ||||
Dpun geo2utm (Dpun pun, long zona=huso, long datum=datum) | · Convierte un punto 'pun' de coordenadas geográficas a UTM (inversa de utm2geo()) | ||||
Dpun utm2utm (Dpun pun, long zona1, long zona2, long datum1=datum, long datum2=datum) | · Cambia de huso, convierte las coordenadas x,y UTM del punto 'pun' de una zona/hemisferio a otro | ||||
Clis mgrs2utm (cadena coord_geograf) | · Devuelve una lista con los datos de referencia UTM [x_este, y_norte, zona, hemisferio], para una latitud y longitud | ||||
long | Cpun | Cpun | Cpunl de_m (double d | Dpun p | Drec r | Dpunl pl) | · Pasa de metros a coordenadas internas, las del objeto pasado como parámetro (distancia, punto, recuadro o lista de puntos) | ||||
long | Cpun | Cpun | Cpunl a_m (long d | Cpun p | Crec r | Cpunl pl) | · Función inversa a de_m(), pasa objetos en coordenadas internas a metros | ||||
| |||||
Cdxient entbusca (Cpun p) | · Devuelve la entidad dentro de la que se encuentra el punto | ||||
int grafico (cadena datos) | · Dibuja una gráfica estadística de líneas, barras o sectores, con los parámetros de la estructura 'datos' cuyo formato está documentado con ejemplos en el script: ejegra·'Ejemplo de funciones gráficos estadísticos (Cdxi)' | ||||
int afactor (long fac) | · Cambia el factor de las unidades internas (unidades_internas / factor = metros) | ||||
int arefer (Cpun ref) | · Cambia la referencia absoluta (en km) | ||||
int acorrec (double fac) | · Desplaza la referencia absoluta sumándole o restándole el factor, pero no sólo modifica el campo referencia, sino que desplaza los puntos | ||||
int aorigen (Cpun ori, bool punto_2=0) | · Desplaza origen absoluto del objeto al punto 'ori'. Si 'punto_2'=1, se desplaza el extremo superior derecho del límite del objeto hasta el 'pun', en vez del origen relativo | ||||
int atamano (long tam, bool eje_y=0) | · Modifica tamaño de un DXI de bloque, manteniendo proporción, poniendo las dimensiones internas 'tam' en ancho (por defecto) o alto (si 'eje_y'=1) | ||||
int apoligono(long radio, long lados, cadena mod="") | · Modifica forma de un DXI de bloque o lo define | ||||
OBSOLETO usar apoligono | |||||
obsoleta | |||||
int ahuso (long huso2) | · Desplaza el sistema de referencia de un huso a otro, modifica campo y desplaza coordenadas. Permite convertir entre husos del sistema UTM a de coordenadas geográficas | ||||
int adatum (cadena|long datum2) | · Desplaza el sistema de referencia de un datum a otro, modifica campo y desplaza coordenadas | ||||
int desplaza (Cpun des, int que) | · Desplaza des; que: (0)todo (<0)ide_de_mapa (>0)ide_de_capa | ||||
| |||||
int empaquetar (long capi=0) | · Realiza una operación de compactación de huecos en geos (los entes eliminados quedan como huecos en la lista para mantener referencias) | ||||
int equilibrar (long capi=0) | · Realiza una distribución geográfica de geos para optimizar al carga y descarga de memoria al navegar por zonas contiguas. Muy importante en producción tener las capas grandes equilibradas, más que el escalado incluso | ||||
int escalar (long capi=0) | · Crea geos escalados (con menos detalle) para escalas superiores, de los entes de capas que se ven a escalas muy grandes. Opcionalmente también se escala la definicón de bloques cuando es necesario (por ejemplo para bloques muy grandes y/o complejos) | ||||
int desescalar (long capi=0) | · Función contraria a escalar(), eliminar todos los geos escalados, por ejemplo cuando se quiere trabajar sin ellos o cuando se cambian de escala muchas capas | ||||
long originales (long capi=0) | · Escala originales eliminando puntos de la definición real de entes quitando los que son co-liniales a las escalas especificadas. Si hay algún error devuelve -1 y sino, el número de puntos originales eliminados | ||||
| |||||
Cdxi Cdxi() | · Devuelve un objeto con modos de BD |
long ide() | · Identificador de bloque |
cadena cod() | · Código del bloque |
cadena res() | · Nombre del bloque |
cadena pro() | · Campo propiedades del bloque, donde se especifican: forma, tamaño, realzado, escalas máxima y mínima... |
Crec tam() | · Recuadro límite envolvente del bloque en coordenadas internas |
Drec tam_m() | · Recuadro envolvente en m |
long fac() | · Factor de unidades (unidades/factor=metros) |
long ico() | · Icono de bloque |
bool vis() | · Es visible |
bool cob() | · Devuelve 1 si se le asigna color por las capas de bloque, y no por la capa en la que se encuentre (marca de Color por bloque en ventana Bloques) |
Cdxicap capa (long capide) Cdxicap capa (cadena capcod, cadena capres="") | · Devuelve un objeto capa identificado por el identificador 'capide' o el código 'capcod', o lo crea si no existe (opcionalmente con el nombre 'capres'). Esta capa pertenece al objeto bloque |
long capn() | · Número de capas de definición del bloque (por defecto una con el código "0") |
Cdxicap capl (long capide) | · Devuelve un objeto capa identificado por 'capide' de entre las que definen el bloque |
int calcula() | · Recalcula limites (blo.rec); si vacio pone defecto · faltan icono() y visible() |
Las capas agrupan geos o paquetes de información Cdxigeo, poniendoles características comunes de visibilidad, color, relleno, orden de dibujo...
El 'color' como parámetro de funciones, y como tipo de dato, admite un número hexadecimal con las 2 componentes R(rojo) G(verde) B(azul) de 0 hasta 256 cada uno, con la notación hexadecimal '0xFF00FF' (en este caso, magenta que es el resultado de rojo al máximo, verde a cero y azul al máximo). También se admiten las tres componentes iguales (lo que equivale a la gama de grises), especificando sólo una de ellas (como '0xEE'). También se admiten nombres de colores en inglés o español, como 'rojo' o 'blue', definidos en el archivo personalizable \macros\csv\colores.csv
| |||||
int editable | · Modo de editabilidad en cuanto a seleccionar y arrastrar o crear nuevos entes (las herramientas pueden editar siempre que la BD esté en edición) · El estado puede ser: (0)bloqueada o no editable, (1)editable, (2)sólo seleccionable. En tablas de BD sólo se guardan los estados 0 y 2 por seguridad | ||||
int visible | · Modo de visibilidad guardado en BD en el campo mapcap.vis. Puede contener: (0)oculta, (1)visible, (2)difusa, en color gris | ||||
bool ilimitada | · Propiedad ilimitada, si es cierta, el tamaño de la capa no influye en el cálculo de límites del dxi | ||||
long icono | · Núm. de identificador de icono de la capa. Se guarda en BD en el campo mapcap.ico y hace referencia a la posición dentro del bitmap \Graficos\icotip16.bmp | ||||
void libera | · Libera contenido de memoria del obketo capa | ||||
| |||||
long pentip (long tip=0) | · Código de estilo de línea según estándar de Windows: (0)continua (1)guiones (2)puntos (3)guión-punto (4)guion-punto-punto (5)nula (6)INSIDEFRAME | ||||
long pengru (long gru=-1) | · Grosor de línea en unidades lógicas | ||||
long penrgb (cadena color="negro") | · Color de línea | ||||
long penmod (long mod=0) | · Modo de esquinas (0)ROUND (1)SQUARE (2)FLAT | ||||
| |||||
long brutip (long tip=0) | · Estilo de relleno estándar de Windows: (0)sin_relleno, (1)sólido (2)HS_HORIZONTAL, (3)HS_VERTICAL, (4)HS_FDIAGONAL[\], (5)HS_BDIAGONAL[/], (6)HS_CROSS[+], (7)HS_DIAGCROSS[x]. A partir del 8, definidos por el usuario en el bitmap \graficos\icotra_16.png | ||||
long bruope=8 | · Operación booleana binaria a realizar cuando coinciden dos puntos uno encima de otro (esto permite diversos tipos de trasparencia de rellenos). Valores (0-15) se corresponden con la lista 'ventana Capas> Color> Operación' y ver el resultado en subpestaña 'Muestra': (0)Negro (4)relleno y fondo transparentes (5)inverso sin relleno ni fondo (9)relleno con fondo transparente (15)blanco | ||||
color brurgb="negro" | · Color de relleno, con el que se colorean las tramas | ||||
color brurgb1="negro" | · Sinónimo de brurgb() | ||||
color brurgb2="blanco" | · Color de fondo en relleno (segundo color de relleno) | ||||
long brumod=1 | · Modo relleno de intersecciones cuando se superponen áreas cerradas de la misma capa: (0)Alterno (1)continuo | ||||
| |||||
double fonalt () (double alt) | · Altura en metros de los textos en la capa (única para todos los textos de una capa); si <0 en pixels | ||||
double fonanc () (double anc) | · Anchura en metros de los textos en la capa (única para todos los textos de una capa); si <0 en pixels | ||||
color foncol="negro" | · Sinónimo de brurgb(). Por una rareza de windows, el color de fuente es el mismo que brurgb(), en vez del lápiz, pero nosotros ponemos color con el de borde. Este valor no se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
long fonali | · Alineación de fuente sobre la línea base | ||||
long fon_height | · Altura en unidades lógicas, el valor 0 implica altura sin entrelineas. Este valor no se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
long fon_width | · Anchura media de fuente | ||||
long fon_escapement | · Giro en décimas de grado sexagesimal, contrareloj desde las "3" | ||||
long fon_orientation | · Orientación en décimas de grado sexagesimal | ||||
long fon_weigth (long peso=400) | · Grosor (negrita) de fuente, admite los valores de 100 en 100: (0)DONTCARE no_se_considera (100)THIN (200)EXTRALIGHT (300)LIGHT (400)NORMAL (500)MEDIUM (600)SEMIBOLD (700)BOLD (800)EXTRABOLD (900)HEAVY. Se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
bool fon_italic=0 | · Itálica (cursiva): valor activado o no. Se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
bool fon_underline=0 | · Subrayada: valor activado o no. Se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
bool fon_strikeOut=0 | · Tachada: valor activado o no. Se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
long fon_charSet=0 | · Juego de caracteres. Los más habituales son: (0)ANSI (1)DEFAULT (2)SYMBOL (77)MAC (186)BALTIC (238)EASTEUROPE (255)OEM | ||||
long fon_outprecision=0 | · Precisión de contorno, valores (0-10): (0)DEFAULT (1)STRING (2)CHARACTER (3)STROKE (4)TRUETYPE (5)DEVICE (6)RASTER (7)TRUETYPE_ONLY (8)OUTLINE (9)SCREENOUTLINE (10)POSTSCRIPT | ||||
long fon_clipprecision=0 | · Precisión de recorte, valores (0)CLIP_DEFAULT_PRECIS (1)CLIP_CHARACTER_PRECIS (2)CLIP_STROKE_PRECIS (255)CLIP_MASK Hay otros dependientes de la versión de Windows | ||||
long fon_quality=0 | · Calidad (0)DEFAULT_QUALITY (1)DRAFT_QUALITY (2)PROOF_QUALITY ... | ||||
long fon_pitchandfamily=0 | · Tipo de familia: (0)DEFAULT ó DONTCARE (1)FIXED (2)VARIABLE (8)MONOSPACING (16)ROMAN (32)SWISS (48)MODERN (54)SCRIPT (80)DECORATIVE | ||||
cadena fon_faceName (cadena familia="verdana") | · Nombre de familia, como: arial, courier, timesnewroman... Se controla en la aplicación desde el diálogo estándar de selección de fuente | ||||
| |||||
long ide () | · Identificador de capa | ||||
cadena cod () | · Código de capa | ||||
cadena res () | · Nombre de capa | ||||
cadena pro () | · Propiedades de capa, donde se permite especificar: si se rotula el atributo asociado de diversas formas, textos con divisiones de longitud sobre las entidades, un bloque mapeado siguiendo la forma de las entidades, un regruesado dibujado... | ||||
cadena dir () | · Directorio de capa, para entidades F y M el camino de archivos externos se forma con: directorio_mapa+directorio_capa+directorio_entidad | ||||
color col () | · Color de capa, con todos los admitidos en funciones de Cdxi | ||||
long emin () | · Escala mínima de representación de capa, en una inferior a esta, se oculta | ||||
long emax () | · Escala máxima de representación de capa | ||||
| |||||
long geon () | · Número de geos de la capa | ||||
Cdxigeo geol (long geoi) | · Devuelve un geo con el identificador 'geoide' de los que componen la lista de paquetes de la capa | ||||
| |||||
long entn (long orden) | · Monta las entidades en todos los geos de la capa. El criterio de ordenación según el parámetro opcional 'ordena': (0)texto (1)resumen (2)area (3)área_calculada; retorna el número de entidades | ||||
Cdxient entl (long entide) | · Devuelve un objeto ente Cdxient con el identificador 'entide' | ||||
long clip | · Pone los polígonos de la capa como región de recorte, se desactiva despues de dibujar | ||||
| |||||
int linea (<puntos>, cadena texto="", bool cerrada=0) | · Inserta en la capa una entidad tipo L, línea con varios segmentos (a partir de 2 puntos) | ||||
int curva (<puntos>, cadena texto="") | · Inserta en la capa una entidad tipo C, curva de 1(punto), 2(círculos y elipses) y 3 o mas (splines) | ||||
int texto (<puntos>, cadena texto, alt=0, alin=0, rot=0) | · Inserta una entidad tipo T(texto). Inserta el texto 'tex' en el punto 'punto', con la alineación 'alin' indicada (teniendo en cuenta que 0 en la esquina inferior izquierda de la caja que contiene el texto y los 9 puntos de control se numeran hacia la derecha y hacia arriba: la esquina superior derecha es 8). · Se le puede dar una rotación 'rot' -en grados y sentido anti-horario-, pivotando sobre el punto opuesto al de inserción, y una altura en metros 'alt', que si no se especifica, es la de textos de la capa · Si no se especifica alt, alin no rot, el texto se insertará con un punto tomando dinámicamente la altura y alineación de la capa | ||||
int textos (<puntos>, Cliscadl texl, alt=0, ali=0, rot=0, desx=0, desy=0) | · Permite dibujar varias entidades tipo T con iguales características en una sola función. Los parámetros son los mismos que en texto(), excepto que texl es una lista de cadenas en vez de una cadena · Admite dos últimos parámetros de desplazamiento, para indicar un solo punto de inserción y un desplazamiento horizontal y/o vertical en metros, de cada uno de los textos respecto al anterior. El orden de textos es el de definición en el array | ||||
int bloque (<punto>, long bloi|cadena bloc|Cdxiblo blo, alt=0, ali=4, rot=0, tex="") | · Inserción de un bloque (entidad tipo B) definido en el 'punto' y referenciado mediante un identificador de bloque 'bloi' de la tabla MAPBLO, un código de bloque 'bloc' o un objeto bloque Cdxiblo · Se le puede dar un tamaño de alto 'alt' en metros, que si no se indica será el tamaño de definición, una alineación respecto al punto de inserción (por defecto al centro del bloque, que es el punto virtual 4 del recuadro envolvente), y una rotación en grados con sentido anti-horario | ||||
int bloques (<puntos>, bloi|bloc|blo, alt=0, ali=4, rot=0, tex="", desx=0, desy=0) | · Permite dibujar varias entidades tipo B con iguales características en una sola función. Los parámetros son los mismos que en bloque() · Admite dos últimos parámetros de desplazamiento, para indicar un solo punto de inserción y un desplazamiento horizontal y/o vertical en metros de cada inserción respecto a la anterior | ||||
int rectangulo (Crec rec, cadena tex="") | · Inserta un recuadro con las coordenadas internas del parámetro 'rec'. El texto multilínea 'tex' se ajusta a la forma del recuadro. Si no se quiere borde, hay que seleccionar estilo de línea 'NULL' | ||||
int recuadro (Crec rec, cadena tex="") | · Sinónimo de rectangulo() | ||||
int ortofoto (Crec rec, cadena tex="") | · Inserta una ortofoto (ente de tipo F) con las coordenadas del recuadro. Los archivos pueden ser de los formatos soportados por la librería gráfica del programa (habitualmente .JPG) | ||||
int ortomapa (Crec rec, cadena tex="") | · Inserta una referencia a un mapa externo (ente de tipo M) con las coordenadas del recuadro. Los archivos externos sólo pueden ser .DXI | ||||
int tubo (Cpunl pl, double ancho, double largo, cadena tex="") | · Inserta un poligono dibujado como paralelas a ambos lados de una línea() o polígono(). Al estar cerrado se puede rellenar, pero no sobrecarga el sistema como el grosor de línea, y puede ser de diversos tamaños en la misma capa · Los parámetros son: la lista de puntos 'pl' que es el eje del tubo a dibujar, el radio 'ancho' en metros, y la distancia en metros de 'largo' por cada extremo si es una línea abierta | ||||
int flecha (Crec rec, double lar_eje, double lar_punta, long porcen=100, cadena tex="") | · Dibuja una flecha tomando como eje de referencia el vector del recuadro 'rec'. 'lar_eje' es la longitud de la base de la flecha, desde el centroide de la cabeza hasta el extremo trasero; 'lar_punta' es la longitud en coordenadas internas de la base de la cabeza de flecha a la punta; | ||||
int poligono (Cpun pun, double rad, long lados, cadena mod="", cadena tex="") | · mod: c1(Cerrado) s0(Sentido reloj) g0(Grados punto incial) · Inserta centrado en el punto 'pun' un objeto de forma básica como los que se pueden definir en bloques, a partir de 2 lados: un aspa, triángulo, cuadrado, pentágono, hexágono... Se especifica un radio 'rad' en metros desde el centro de la forma, y el nº de 'lados' | ||||
OBSOLETA usar poligono | |||||
int circulo (Cpun pun, double rad, cadena tex="") | · Inserta un circulo, de radio 'rad' en metros, apoyado | ||||
int arco (Cpun pun, double rad, long ang1=0, long ang2=0, long gra=5, cadena tex="") | · Inserta una línea como con linea(), pero trazando un arco regular con punto de apoyo 'pun', radio 'rad' en metros, y dibujado entre el ángulo 'ang1' y 'ang2' (en sentido anti-horario) el número de puntos del arco depende de la precisión de cada segmento en grados (por defecto 5, o sea, 72 segmentos por círculo) | ||||
int elipse (Cpun pun, double rad1, double rad2, long rot=0, long ang1=0, long ang2=0, long gra=5, cadena tex="") | · Inserta una línea elíptica, como arco(), pero especificando un radio mayor 'rad1' y uno menor (vertical) 'rot2' en metros, en torno a los cuales se traza la elipse, con además los mismos parámetros que la otra función | ||||
int entidad (Cdxient ent) | · Inserta en la capa en objeto ente 'ent' que puede ser de cualquier tipo, y ya | ||||
void calcula () | · Calcula límites de geos y agrega a general | ||||
void geos_cierra () | · Cierra geos de la capa (no se agregan entidades a ellos) | ||||
void entT_anchura (altura_de_capa=0) | · Recalcula anchura de textos; si altura de capa fuerza altura de capa | ||||
void entT_apunto () | · Ajusta textos a un punto | ||||
void entT_colisiones () | · Resuelve colisiones entre entidades de texto | ||||
| |||||
datos () | · Datos de geos con la antigua sintaxis de cadena de texto tipo: "geo|dat|geo|dat..." | ||||
activa () | · Ver atributo editable() | ||||
difusa () | · Ver atributo visible() |
Los entes o entidades son la unidad gráfica de información más pequeña (salvo los puntos, de los que se componen). Se agrupan en una lista conformando paquetes o Geos (objetos Cdxigeo)
| ||||
cadena tex () | · Devuelve la cadena atributo de texto asociado al ente. Este atributo se suele usar para guardar las variables definidas en pestaña Variables o importadas de archivos .SHP, para guardar los códigos de conceptos asociados cuando se geodesreferencia, guardar los caminos y nombres de archivo en las entidades ortofoto o mapa, y otros... | |||
cadena texto () | · Devuelve el texto de tex() sin parámetros (separador punto y coma (;)) | |||
cadena codigo () | · Devuelve el texto de tex() hasta el primer espacio por la izquierda | |||
cadena resumen () | · Devuelve el texto de tex() a partir del primer espacio por la izquierda | |||
Dpunl punl_m () Dpun punl_m (long puni) | · Devuelve la lista de puntos ordenados, que componen el objeto; o el punto de orden 'puni' del objeto. Los puntos devueltos están en coordenadas externas en metros | |||
Drec limite_m () | · Recuadro en coordenadas externas (metros) con el límite de la entidad | |||
Crec limite_mm () | · Recuadro en coordenadas internas (normalmente mm) con el límite de la entidad | |||
double perimetro_m () | · Cantidad con el perímetro de la entidad en metros | |||
double area_m2 () | · Cantidad con el área de la entidad en m2 | |||
| ||||
int cambia (cadena tex) int cambia (Cpunl|Dpunl pl) | · Modifica el ente, cambiando el atributo tex() por el texto 'tex'. Tambien admite una lista de puntos 'pl' (Cpunl ó Dpunl) · / if (nombre == "cambia_tipo") return 1031; // int cambia_tipo (tip, bloi|bloc) // Cambia el tipo o bloque de entidad, admite identificador o código de bloque · / if (nombre == "cambia_capa") return 1032; // int cambia_capa (capi|capc) // Cambia la capa de la entidad, admite identificador o código de capa · / if (nombre == "cambia_mapa") return 1033; // int cambia_mapa (mapi|mapc) // Cambia el mapa de la entidad, admite identificador o código de mapa | |||
| ||||
long mi() | · Identificador de mapa en que se encuentra la entidad | |||
long ci() | · Posición de capa Cdxicap | |||
long gi() | · Posición de geo Cdxigeo | |||
long di() | · Posición de dato Cdxient | |||
long pi() | · Posición de punto Cpun | |||
char tip() | · Caracter con el tipo de ente=geo: (L)ínea, (B)loque, (C)írculo, (T)exto, (R)ecuadro, (M)apa, oto(F)oto | |||
long ide() | · Identificador de geo al que pertenece el ente | |||
long geoi() | · Identificador de geo escalado relacionado con el que contiene al ente | |||
long bloi() | · Identificador de bloque, si es un ente de tipo 'B' | |||
long coni() | · Modifica ent.tex si con georreferencia | |||
Cpun pun() | · Punto de entidades '.' | |||
| ||||
long | Cpun | Cpun | Cpunl de_m (double|Dpun|Drec|Dpunl) | · Convierte un real, objeto punto, recuadro o lista de puntos en coordenadas externas (metros) a sus correspondientes en internas: un entero, punto, recuadro o lista en milímetros (por ejemplo), respectivamente | |||
double | Dpun | Drec | Dpunl a_m (long|Cpun|Cpun|Cpunl) | · Función inversa a de_m(), pasa un nº entero, objeto punto, recuador o lista de puntos, de coodenadas internas a metros |
Estos paquetes homogéneos componen las capas Cdxicap; son homogéneos por tipo de ente y dentro del tipo (B)loque, por cada bloque distinto. Puede haber varios del mismo tipo por capa, al hacer un equilibrado o distribución geográfica
| ||||
long ide | · Devuelve el identificador del geo dentro de una capa (único en BD, no secuencial y repetido como los entes en los geso y los puntos en los entes) | |||
char tip | · Caracter con el tipo de geo, por la información que lo compone: (L)ínea, (B)loque, (C)írculo, (T)exto, (R)ecuadro, (M)apa, oto(F)oto | |||
long emin | · Escala mínima de representación del geo, análoga a la de capas Cgeocap; se parte de la más genérica de la capa y se restringe por el tipo o tamaño de los entes en el geo | |||
long emax | · Escala máxima de representación del geo, análoga a la de capas Cgeocap | |||
long bloi | · Identificador del bloque en la tabla GEOBLO, sólo si el geo es de tipo (B)loque | |||
long geoi | · Identificador de otro Geo en el misma capa que es un escalado del objeto actual a escalas superiores. Sólo los geos con los datos reales tienen geoi=0 | |||
Crec rec | · Rectángulo máximo envolvente de todos los entes del geo, en coordenadas internas (mm,cm...) | |||
Drec rec_m | · Rectángulo máximo en coordenadas externas (m) | |||
long entn | · Número de entes del geo | |||
| ||||
Cpunl entl () Cpun entl (long entide) | · Devuelve la lista de entes ordenados, que componen el objeto; o el ente de orden 'entide' del objeto. Los entes devueltos tienen coordenadas internas (mm, cm...) | |||
int elimina (entide) | · Elimina el ente de orden 'entide' de la lista de entidades del geo |
Las estructuras de árbol en ventanas de capas y bloques son un campo de texto en la tabla CAB de cabecera de BD. Los registros que contienen esos textos: 'tabmap_orgcap' y 'tabmap_orgblo', con la siguiente estructura por cada línea del árbol:
Tanto ramas (carpetas) como hojas (capas o bloques): 'niv | abi | ico | ide | nombre | visible || editable | \r\n'
Para editar la estructura hay que reescribir el campo con el texto completo. Para recuperar datos, tenemos varias funciones:
bool que() | · Indica tipo de estructura: (0)capa (1)bloque |
long pos() | · Devuelve un entero con la posición de la hoja (capa/bloque) en el árbol |
long niv() | · Devuelve el nivel de adentrado. En carpetas de 0 a 7, en hojas calculado en función de la carpeta en la que está |
int abi() | · Devuelve en estado de si la carpeta está 'abierta' o expandida, mostrando las hojas: (0)no, (1)si. En hojas siempre devuelve -1 |
long ide() | · En hojas, el identificador de hoja (capa o bloque) que apunta a las tablas MAPCAP y MAPBLO de BD donde se almacenan capas y bloques con sus características. En carpetas siempre devuelve 0 |
cadena res() | · En carpetas, devuelve la descripción. En hojas siempre devuelve "" (la información está en las tablas de capas y bloques) |
Asignado a una variable, crea un objeto que representa un servidor FTP y permite realizar la conexión, subida y bajada de archivos mediante ese protocolo, y las funciones normales de gestión de archivos y directorios. Hay un ejemplo script en 'webd_ftp·Web. FTP', que es el módulo que utiliza la ventana de Herramientas web
| |||||
int open (cadena servidor, cadena usuario, cadena contraseña, modo_pasivo=-1) int open (cadena url_completa, modo_pasivo=-1) | · (0)no (1)si (-1)ini · El servidor puede incluir opcionalmente el protocolo 'ftp://' · La url_completa debe incluir todo el formato DNS como 'ftp://usuario:contraseña@ftp.ingra.com' | ||||
int close () | · Cierra conexión con el servidor | ||||
int get (cadena arc_remoto, cadena arc_local="") | · Baja o descarga el archivo arc_remoto. Si no se especifica arc_local, se devuelve el contenido del archivo | ||||
int put (cadena arc_local, cadena arc_remoto, bool estexto=0) | · Sube a ftp o graba en el directorio remoto con el nombre arc_remoto el archivo arc_local. Si estexto=1 se considera que el parámetro arc_local es el propio contenido del archivo de texto | ||||
int del (cadena arc_remoto) | · Borra el archivo en el directorio actual o espeficicado | ||||
int ren (cadena arc_remoto, cadena nuevo_nombre) | · Cambia el nombre de un archivo en ftp si el servidor lo permite (arc_remoto debe existir) | ||||
int cd (cadena dir_remoto) | · Cambia el directorio de trabajo remoto; se devuelve un valor distinto de 0 si hay un error que impide el cambiuo | ||||
int md (cadena dir_remoto) | · Crea el directorio remoto (se deben tener los permisos necesarios) | ||||
int rd (cadena dir_remoto) | · Elimina el directorio | ||||
Clis ls (cadena mascara, long filtro=0) | · Recupera una lista cuyos elementos son arrays con la información [nombre,es_directorio,tamaño(bytes),fecha,hora] de los nombres de archivos y/o directorios contenidos en un directorio remoto. En el camino se admiten caracteres comodín para establecer una máscara (como "programas/datos/*.exe"). El filtro puede ser: (0)archivos, (1)directorios (2)todos | ||||
int getd (dir_remoto, dir_local) | · Descarga todo el contenido del dir_remoto al dir_local | ||||
int putd (dir_local, dir_remoto) | · Pone en el directorio dir_remoto todo el contenido del directorio dir_local | ||||
bool sincroniza (cadena dir_local, cadena dir_remoto, cadena mod) | · Pone en el directorio dir_remoto todo el contenido del directorio dir_local, mod(modificadores): p-1(modo_pasivo -1ini 0no 1si) t0(traza 0no 1si) | ||||
bool sincroniza (cadena dir_remoto, cadena dir_local, cadena mod) | · Pone en el directorio dir_local todo el contenido del directorio dir_remoto, mod(modificadores): p-1(modo_pasivo -1ini 0no 1si) t0(traza 0no 1si) |
Gestiona mediante la librería CXimage, el manejo de gráficos ima y vectoriales. Existe otro objeto Cbas.Cima para funciones aplicables a gráficos de BD
| ||||
int lee (cadena archivo="") | · Carga en el objeto la imagen asociada al 'archivo'. Si no indicamos ningún archivo, cargará la imagen actual del portapapeles · int lee (Cgra gra) // Todas las funciones que devuelven un 'int', devuelven 0 si la operación se realizan sin errores | |||
int graba (cadena archivo="", cadena mod="q100") | · Sin parámetros pone la imagen actualmente cargada en el objeto en el portapapeles. Se puede grabar en un 'archivo' que puede ser expresado como una ruta relativa a partir del directorio de gráficos de la aplicación. Se pueden especificar modificadores en el parámetro 'mod', con los valores: · int graba (Cgra gra) // q<porcentaje_compresión_calidad> al formato .JPG le es aplicable la compresión (un valor óptimo es "q85" que indica una compresión de un 15%, lo que tiene poca pérdida de calidad) | |||
== lee | ||||
| ||||
long tip () | · Tipo de imagen: (0)no hay imagen, (1)DIB, (2)EMF, (3)DXF, (4)DXI, (5)XIM | |||
long ancho () | · Número de píxeles que la imagen tiene en horizontal | |||
long alto () | · Número de píxeles que la imagen tiene en vertical | |||
long planos () | · Número de planos de la imagen · bool planos (long pla) // Pone número de planos | |||
cadena rotulo () | · Rótulo con características de la imagen (dimensiones, bits de color, tamaño, compresión...) | |||
bool vectorial () | · Devuelve distinto de 0 si la imagen es vectorial | |||
| ||||
int nueva (long ancho, long alto, long planos=24) | · Crea una imagen nueva con fondo blanco y el tamaño 'ancho', 'alto' y número de 'planos' especificados (24 bits es color verdadero o TrueColor). | |||
bool mezcla (Cima ima, long x, long y, long copia=0) | · Mezcla la imagen actual con la indicada en el parámetro 'ima' · Los parámetros 'x' y 'y' definen desplazamientos en horizontal y vertical para la imagen 'ima' sobre la actual · El parámetro 'copia' es opcional, si no copia mezcla si origen tiene transparencias | |||
bool filtra (cadena filtro) | · Aplica un 'filtro' a la imagen actual. Estos filtros son los mismos que se aplican en Pestaña Concepto> Gráficos> Filtros. La documentación de nombres y parámetros de filtros también se encuentra en el script: '\Ejemplos \EJEMPLOS CON GRÁFICOS BITMAP Y VECTORIALES \ejegrafil·Documentación filtros de imágenes (Cima)' | |||
| ||||
cadena propiedades () | · Metadatos | |||
bool pon_argb (x,y,argb) | · pone argb en x,y | |||
bool pon_rgb (x,y,rgb,alfa=255) | · pone rgb en x,y | |||
argb ten_argb (x,y) | · obtiene argb den x,y | |||
rgb ten_rgb (x,y) | · obtiene rgb de x,y |
Asignado a una variable, crea un objeto de tipo fecha-hora, que permite gestionar operaciones complejas con fechas (como calcular periodos, restar o sumar días a fechas, calcular fechas sumando horas, etc.)
NOTACIÓN: los parámetros de tipo intervalo pueden ser menores o mayores que 00:00:00, en cambio los de tipo hora, están restringidos entre 00:00.00 y 24:00:00 (inclusive).
Se puede ver un ejemplo de utilización de muchos modificadores en el informe "\Colecciones especiales\Ejemplos\Ejemplo de uso del objeto Chor"
El constructor habitual del objeto es: Chor (hor, min, seg, es_intervalo=1), cada uno de los tres valores puede ser entero o real, positivo o negativo, y son opcionales quitando por la derecha
long hors | · Horas del objeto | |||
long mins | · Minutos del objeto | |||
long segs | · Segundos del objeto | |||
void ponintervalo () | · Asignándole el valor 1, se fuerza el formato del objeto a intervalo, con el valor cero, se fuerza a formato hora | |||
bool esintervalo () | · Devuelve el valor verdadero (1) si el formato es de intervalo o cero, si es de hora | |||
void ponhora (long hor) | · Asignándole un valor entero 'hor', establece sobre el mismo objeto Chor la hora, minuto y segundo de hora, manteniendo el formato que tenía (hora o intervalo). Ejemplo: si h1 es de tipo hora 00:00:00, h1.ponhora=271345 daría como resultado 3:13:45 | |||
void redaminutos () | · Redondea a minutos el objeto | |||
void redhoras () | · Redondea a horas el objeto | |||
cadena cadena (bool completo=0) | · Devuelve una cadena con la hora formateada en el formato completo si 'completo'=1, o el más breve posible (eliminando ceros por la derecha) por defecto. Ej: h1=Chor(2,1) y h1.cadena(1) sería 2:00:00 pero h1.cadena sería 2 | |||
long entero () | · Devuelve el objeto hora en formato número entero. Ej: h= Chor(120523), h.entero sería el número 120523 | |||
double doble () | · Devuelve el objeto hora en formato real largo, con la misma hora 12:05:23, se devolvería el número real 23,216666666667 | |||
int suma (long hor, bool esreal=0) | · Aplicada sobre un objeto de clase hora, lo modifica añadiéndole el número de horas, min, y seg. de la hora hor | |||
int resta (long hor, bool esreal=0) | · Equivalente a suma(), devuelve la diferencia de horas entre la del objeto y 'hor' en el objeto en el que se aplica la función, pudiendo especificar si el parámetro es un nº real | |||
| ||||
Chor suma2h (long hor, bool esreal=0) | · Devuelve la suma de la hora 'hor', al objeto hora sobre el que se aplica la función, pero se devuelve un valor, no se modifica el objeto | |||
Chor resta2h (long hor, bool esreal=0) | · Equivalente a suma2h(), devuelve la diferencia de horas entre la del objeto y 'hor' en un objeto Chor, pudiendo especificarse si 'hor' es un nº real | |||
Chor divide2h (long|float fac) | · La función devuelve un objeto cuya hora es el valor de dividir la del objeto entre el factor 'fac' divisor entero o real. Ej: si h=13:00:00, h2= h.divide2h(2), h2 será 6:30:00 dejando en h su valor | |||
Chor multiplica2h (long|float fac) | · Equivalente a divide2h(), devuelve otro objeto con la hora multiplicada por el factor 'fac' |
int open (cadena arcremoto) | · Abre una conexión con el servidor, para leer el archivo (con el camino completo 'arcremoto' incluido el servidor). Devuelve: (0)ok (1)no_encontrado (-1)error |
cadena get (cadena arcremoto) int get (cadena arcremoto, cadena arclocal) | · Recupera el texto del archivo 'arcremoto' y lo devuelve. Si se especifica un segundo parámetro, se graba la cadena 'arcremoto' con el nombre de archivo 'arclocal' y se devuelve 1 si hay error |
int close () | · Cierra la conexión con el servidor de páginas |
Gestiona mediante la librería CXimage, el manejo de gráficos bitmap y vectoriales. Existe otro objeto Cbas.Cima para funciones aplicables a gráficos de BD
| ||||
bool lee (cadena archivo="", cadena mod="") | · Carga en el objeto la imagen asociada al 'archivo'. Si no indicamos ningún archivo, cargará la imagen actual del portapapeles; modificadores: e1(es gdi+ para transparencias) · Todas las funciones que devuelven un 'bool', devuelven 0 si la operación se realizan sin errores | |||
bool graba () bool graba (cadena archivo, cadena mod="q100") | · Sin parámetros pone la imagen actualmente cargada en el objeto en el portapapeles. Se puede grabar en un 'archivo' que puede ser expresado como una ruta relativa a partir del directorio de gráficos de la aplicación. Se pueden especificar modificadores en el parámetro 'mod', con los valores: · q<porcentaje_compresión_calidad> al formato .JPG le es aplicable la compresión (un valor óptimo es "q85" que indica una compresión de un 15%, lo que tiene poca pérdida de calidad) | |||
bool copia (Cima ima) | · Carga el objeto actual con una copia de la imagen 'ima' | |||
bool dxflee (cadena datos) | · Lee un archivo de texto almacenado en 'datos', en formato DXF2000 y crea una imagen vectorial con ellos | |||
| ||||
long tipo () | · Tipo de imagen: (0)no hay imagen, (1)DIB, (2)EMF, (3)DXF, (4)DXI, (5)XIM | |||
long ancho () | · Número de píxeles que la imagen tiene en horizontal | |||
long alto () | · Número de píxeles que la imagen tiene en vertical | |||
long planos () | · Número de planos de la imagen · bool planos (long pla) // Pone número de planos | |||
cadena rotulo () | · Rótulo con características de la imagen (dimensiones, bits de color, tamaño, compresión...) | |||
bool vectorial () | · Devuelve distinto de 0 si la imagen es vectorial | |||
| ||||
bool nueva (long ancho, long alto, long planos=24) | · Crea una imagen nueva con fondo blanco y el tamaño 'ancho', 'alto' y número de 'planos' especificados (24 bits es color verdadero o TrueColor). | |||
bool filtra (cadena filtro) | · Aplica un 'filtro' a la imagen actual. Estos filtros son los mismos que se aplican en Pestaña Concepto> Gráficos> Filtros. La documentación de nombres y parámetros de filtros también se encuentra en el script: '\Ejemplos \EJEMPLOS CON GRÁFICOS BITMAP Y VECTORIALES \ejegrafil·Documentación filtros de imágenes (Cima)' · OBSOLETAS | |||
long tip () | · Tipo de imagen: (0)no hay imagen, (1)DIB, (2)EMF, (3)DXF, (4)DXI, (5)XIM | |||
cadena dimensiones () | · Rótulo con características de la imagen (dimensiones, bits de color, tamaño, compresión...) · if (nombre == "mezcla") return 21; // bool mezcla (Cima ima, long xof, long yof, long ope=5) · Mezcla la imagen actual con la indicada en el parámetro 'ima' · Los parámetros 'xof' y 'yof' definen desplazamientos en horizontal y vertical para la imagen 'ima' sobre la actual · El parámetro 'ope' es opcional y define la operación que se realizará al mezclar las imágenes: (0)OpAdd, (1)OpAnd, (2)OpXor, (3)OpOr, (4)OpMask, (5)OpSrcCopy, (6)OpDstCopy, (7)OpSub, (8)OpSrcBlend, (9)OpScreen | |||
|
En el informe \Ejemplos \Ejemplos del maquetador de informes \Ejemplo de modificadores del maquetador (Cimp), se tiene una documentación completa de todos los modificadores de formato a los que se hace referencia aqui como parámetro 'mod'
Cuando se definen modificadores a distintos niveles (invocando los distintos métodos del objeto impresor) que afectan al formato de un mismo atributo de un campo, se impone el siguiente criterio de precedencia de mayor a menor: (+ importante) campo -> línea -> columna -> tabla -> global (- importante)
| ||||
void campo () void campo (cadena dato | long dato | double dato | Cima dato, cadena mod="", cadena mimp="") | · Añade un campo a la lista de campos a imprimir en una linea. Este es el método por defecto del objeto impresor, por lo que no es necesario incluir la palabra 'campo' para invocarlo. · El parámetro 'dato' puede ser: una cadena de texto, o un número, o una expresión que pueda evaluarse a una cadena de texto o a un número, o una imagen. · El parámetro 'mod' es una cadena de texto conteniendo modificadores de formato del campo, estos modificadores determinarán el aspecto que tendrá el campo. · Si no recibe ningún parámetro, se añadirá un campo vacío | |||
void linea (cadena mod="", long bloquea=0) void linea (long bloquea) | · Muestra una línea con los campos definidos previamente con el método 'campo'. · El parámetro 'mod' es una cadena de texto que contiene modificadores de formato aplicables a la línea. · Si el parámetro 'bloquea' es distinto de cero, la línea irá unida a la siguiente, sin separarlas en el caso de producirse un salto de página. El bloqueo se rompe cuando invocamos una linea sin bloqueo. Entonces se imprimen todas las que quedaban pendientes bloqueadas. · Si se ha invocado previamente el método 'tabla', los campos se mostrarán en las columnas definidas para la tabla. En caso contrario teniendo en cuenta el tamaño del papel, los márgenes establecidos, y el número de columnas del informe, el método 'linea' divide el ancho disponible de la línea en partes iguales, asignando este espacio a cada campo de la lista, y colocando en este espacio el dato o valor de cada campo | |||
void pagina () | · Equivale a un salto de página. Deja el resto de la página en blanco y salta a la siguiente | |||
void tabla (cadena modcol="", cadena modtab="") | · Determinar el número total de columnas que se quiere mostrar cada vez que se llame al método 'linea', y el aspecto que tendrá cada una de ellas. · El parámetro 'modcol' contiene los modificadores para las columnas de la tabla, los modificadores de cada columna se separan con un espacio. Si el modificador de columna es un punto, tomará como tamaño todo el restante. · El parámetro 'modtab' especifica los modificadores aplicables a todas las columnas de la tabla o modificadores de tabla. · Si no se especifican parámetros el resultado será la eliminación de la anterior definición de tabla | |||
void global (cadena mod) | · Establece modificadores de formato que se aplicarán a todos los campos del informe. La cadena 'mod' contendrá una combinación de modificadores de formato | |||
Cimp subtabla (cadena modcol="", cadena modtab="", cadena modcam="") | · Devuelve un objeto tabla de impresión que ocupará el siguiente campo dentro de la línea actual de impresión · Los parámetros 'modcol' y 'modtab' son los mismos utilizados para el método 'tabla' de este mismo objeto · El parámetro 'modcam' especifica los modificadores del campo sobre el que será impreso esta tabla · P.ej: var sub=imp.subtabla(". .", "b1", "m#38AD5F") { sub ("SC 1"); sub ("SC 2"); sub.linea(); } mostrará dentro de la tabla donde se defina la variable "sub", un campo que se divide en una subtabla de dos columnas iguales, con borde y un fondo de color verde | |||
void hor (double x1=0, double x2=0, double y=0, ..., cadena mod="") | · Muestra una o varias líneas horizontales · Si no recibe ningún parámetro muestra una línea horizontal ocupando el ancho de la página disponible · El parámetro 'x1' y 'x2' indican la posición inicial y final del trazado de la línea · Los sucesivos parámetros 'y' indican las posiciones verticales donde se trazarán las líneas · El parámetro mod especifica un conjunto de modificadores | |||
void ver (double y1=0, double y2=0, double x=0, ..., cadena mod="") void ver (double y1, cadena columnas, cadena mod="") void ver (double y1, double y2, cadena columnas, cadena mod="") | · Muestra una o varias líneas verticales · Si no recibe ningún parámetro muestra una línea vertical ocupando el alto de la página disponible · El parámetro 'y1' y 'y2' indican la posición inicial y final del trazado de la línea · Los sucesivos parámetros 'x' indican las posiciones verticales donde se trazarán las líneas · El mismo fin tiene el parámetro 'columnas' que tiene la misma nomenclatura que el mismo parámetro que se utiliza en el método 'tabla' · El parámetro mod especifica un conjunto de modificadores | |||
void cierra () | · Cierra el objeto | |||
| ||||
long col () | · Devuelve la columna (definida en el objeto 'Cimp'), dentro del informe en la que se mostró la última línea al invocar el método 'linea'. Si el número de columnas del informe es superior a 1, la propiedad tendrá inicialmente el valor 1, y se incrementará de uno en uno al mostrar la primera línea de las sucesivas columnas del informe | |||
long pag () | · Devuelve el número de página actual | |||
double yy () | · Devuelve los milímetros libres verticales de la pagina actual. Diferencia entre 'y2' e 'y1' | |||
double xx () | · Devuelve los milímetros libres horizontales de la pagina actual. Diferencia entre 'x2' e 'x1' | |||
double y1 () | · Devuelve los milímetros de distancia desde el borde superior de la página al comienzo de la línea que se imprime al llamar al método 'linea' | |||
double y2 () | · Devuelve los milímetros de distancia desde el borde superior de la página al margen inferior definido en la ventana 'Configuración de impresora' | |||
double x1 () | · Devuelve los milímetros del margen izquierdo establecido en la ventana 'Configuración de impresora' | |||
double x2 () | · Devuelve los milímetros de distancia desde el borde izquierdo de la página al margen derecho establecido en la ventana 'Configuración de impresora' | |||
double y () | · Devuelve en milímetros la posición actual vertical | |||
double xpm () | · Devuelve los puntos por milímetros | |||
double xl (long tipo_letra=1) | · Devuelve los milímetros horizontales del tipo de letra especificado en 'tipo_letra'. Los tipos de letras están definidos en la ventana 'Opciones/Visualización/Letras' | |||
double yl (long tipo_letra=1) | · Devuelve los milímetros verticales del tipo de letra especificado en 'tipo_letra'. Los tipos de letras están definidos en la ventana 'Opciones/Visualización/Letras' | |||
Crec recmax () | · Devuelve el rectángulo máximo en píxeles | |||
Drec recmax_m () | · Devuelve el rectángulo máximo en metros | |||
Drec recmax_mm () | · Devuelve el rectángulo máximo en milímetros | |||
Crec recimp () | · Devuelve el rectángulo imprimible en píxeles | |||
Drec recimp_m () | · Devuelve el rectángulo imprimible en metros | |||
Drec recimp_mm () | · Devuelve el rectángulo imprimible en mm | |||
Crec recact () | · Devuelve el rectángulo actual en píxeles | |||
Drec recact_m () | · Devuelve el rectángulo actual en metros | |||
Drec recact_mm () | · Devuelve el rectángulo actual en milímetros | |||
| ||||
double marsup () void marsup (double margen) | · Sin parámetro devuelve el margen superior de página en milímetros · Si especificamos el margen en milímetros, modificamos el margen superior actual | |||
double marinf () void marinf (double margen) | · Sin parámetro devuelve el margen inferior de página en milímetros · Si especificamos el margen en milímetros, modificamos el margen inferior actual | |||
double marizq () void marizq (double margen) | · Sin parámetro devuelve el margen izquierdo de página en milímetros · Si especificamos el margen en milímetros, modificamos el margen izquierdo actual | |||
double marder () void marder (double margen) | · Sin parámetro devuelve el margen derecho de página en milímetros · Si especificamos el margen en milímetros, modificamos el margen derecho actual | |||
double marenc () void marenc (double margen) | · Sin parámetro devuelve el margen de encuadernación de página en milímetros · Si especificamos el margen en milímetros, modificamos el margen de encuadernación actual | |||
| ||||
cadena pri_nombre () | · Devuelve el nombre de la impresora actual | |||
char pri_orientacion () | · Devuelve 'h' si la orientación es horizontal y 'v' si la orientación es vertical | |||
long pri_tamano () | · Devuelve el tamaño de página: 2 (para hojas A2), 3 (para hojas A3), etc ... | |||
long pri_color () | · Devuelve 1 si se va a imprimir a color y 0 en caso contrario |
Asignado a una variable, crea un objeto que representa al gestor de correo, y permite enviar, recibir y recuperar datos de e-mail, así como gestionar el cliente de correo predeterminado que se tenga en el sistema
bool readmail () | · Activa las funciones de la DLL MAPI, que es obligatorio que esté instalada en el sistema; si no es así, se muestra un error y no se pueden utilizar los métodos. Lee el siguiente e-mail de la lista y lo pone como el actual |
bool deletemail (cadena ind) | · Elimina el e-mail actual del buzón de entrada (por defecto 'ind'=idmsg(), o bien el e-mail con identificador 'ind' |
bool sendmail (cadena nom, cadena dest, cadena asun="", cadena tex="", cadena arc="", int vis=1) | · Envía un mensaje con el nombre 'nom', a dirección de correo 'dest', y opcionalmente contenido de texto 'tex', asunto 'asun' y archivo adjunto de nombre 'arc'. Devuelve distinto de cero si hay algún error |
cadena from () | · Devuelve nombre e-mail del remitente (procedencia) |
cadena to () | · Devuelve nombre literal del destinatario del mensaje |
cadena subject () | · Devuelve asunto del mensaje actual |
cadena date () | · Devuelve fecha y hora de envío del mensaje (llegada al servidor de correo) |
cadena text () | · Devuelve contenido de texto multilínea del mensaje |
cadena idmsg () | · Devuelve identificador del mensaje dentro de la lista de mensajes recibidos |
long archivos () | · Devuelve el número de archivos adjuntados al mail |
bool archivo (long pos) | · Devuelve la ubicación del archivo adjunto de la posición 'pos' |
cadena nombre (long pos) | · Devuelve el nombre del archivo archivo adjunto de la posición 'pos' |
Se almacenan como números enteros (normalmente milímetros) a partir del origen de referencia absoluta
| |||||
long pon (long ind) Cpun pon (long x, long y) Cpun pon (Cpun p) Cpun pon (Clislong coor) Cpun pon | · Método por defecto (no hace falta especificarlo) para recuperar o asignar un punto · Si como parámetro se especifica 0 ó 1, se recupera la primera o segunda coordenada del punto · Para darle valor se puede asignar un entero como coordenadas 0 y 1 (Ej: p1(0)=10; p1(1)=12;). Se puede asignar una lista con las coordenadas 'coor' (Ej: p1([10,12]) ). Dar un par de parámetros (Ej: p1(10,12) ). Asignar otro punto (Ej: p1= p3;) | ||||
Cpun mas (long factor | Cpun pun) | · Suma a cada coordenada del punto actual un factor entero (positivo o negativo), o las 'x' e 'y' de un punto. Devuelve otro objeto | ||||
Cpun por (double val) | · Multiplica cada coordenada del punto actual un nº real 'factor' | ||||
long x | · Devuelve o ASIGNA el valor de la coordenada x (nº entero) | ||||
long y | · Lo mismo que el método x, pero para coordenatda vertical | ||||
| |||||
double d (Cpun p2) | · Nº real con la distancia desde el objeto al punto p2 | ||||
double d2 (Cpun p2) | · Nº real con la distancia al cuadrado del objeto al punto p2 | ||||
Cpun med (Cpun p2) | · Punto medio entre el objeto y p2 | ||||
Cpun tam (Cpun p2) | · Punto cuya x e y representan la diferencia entre p2 y el objeto, con coordenas en (0,0) (Ej: pun=(3,7) y p2=(10,8) pun.tam(p2)=(7,1) | ||||
Cpun dis (Cpun p2, long dis) | · Punto a una distancia 'dis', positiva o negativa a partir del objeto, en el vector Cpun -> p2 | ||||
Cpun per (Cpun p2, long dis) | · Punto a una distancia 'dis', con apoyo en Cpun, en un vector perpendicular al vector Cpun -> p2 | ||||
Cpun copia () | · Devuelve un punto copia del objeto | ||||
| |||||
cadena ac (cadena sep=",", bool std=0) | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un punto (el objeto) | ||||
| |||||
cadena toString () | · Sinónimo de ac(), sin parámetros |
Algunas funciones y datos para entidades de dibujo son muy similares a los de las entidad Cdxicap, ya que muchas de aquellas trabajan con listas de puntos
| |||||
Cpun pun (long ind) Clis pun void pun ({long coord}...) | · Método por defecto (no hace falta especificarlo) de la lista de puntos. Con un índice 'i' como parámetro, devuelve un Cpun que es el punto indicado. También se puede hacer una asignación de una lista de coordenadas de puntos (como pl1=[x1,y1,x2,y2...] ) o con múltiples parámetros (como pl2(x1,y1,x2,y2,x3...) ) | ||||
Cpunl mas (double factor | Cpun pun) | · Admite un nº real 'factor' positivo o negativo, que se suma a cada punto de la lista; o bien un desplazamiento sumando y/o restando las coordenadas de un punto 'pun' | ||||
Cpunl por (double factor) | · Nº real por el que multiplicar las coordenadas x e y del objeto | ||||
masi (double factor | Cpun pun) | · mas igual, como mas pero sobre la misma lista | ||||
pori (double factor) | · por igual, como por pero sobre la misma lista | ||||
long num | · Devuelve o asigna el nº de puntos de la lista | ||||
long length | · Sinónimo del método 'num'; | ||||
bool cerrada | · Devuelve o asigna el estado de si la lista de puntos se debe considerar cerrada (el último punto enlaza con el primero) | ||||
void pon (cadena serie_xy | Clislong lista | Cpun p | Cpunl pl) | · Para inicializar un objeto añadiendo puntos a la lista. Admite como parámetros: una cadena 'serie_xy' de coordenadas seguidas x1,y1,x2,y2,x3..., una 'lista' de pares [x1,y1,x2,y2,...], un punto Cpun, u otra lista Cpunl | ||||
void agrega (cadena serie_xy | Clislong lista | Cpun p | Cpunl pl) | · Sinónimo de pon(), pero sumando puntos o listas, sin inicializar el objeto | ||||
void libera () | · Libera la memoria del objeto | ||||
void cierra () | · Pone el valor cerrada; distinto de 0 | ||||
| |||||
Crec limite () | · Devuelve un recuadro con la envolvente de la lista de puntos | ||||
double area () | · Devuelve un número real con el área de la "línea" definida por la lista, siempre como si estuviese aunque no lo esté | ||||
double perimetro () | · Devuelve un número real con la longitud de la "línea" definida por la lista | ||||
Cpun medio () | · Devuelve un punto equidistante de los puntos extremos de la lista | ||||
Cpun centroide () | · Devuelve un punto equidistante de todos los puntos de la lista; parecido a la aplicación del rótulo de texto en una línea cerrada | ||||
Cpun deinercia () | · Devuelve un punto como el centroide(), pero considerando la densidad de agrupación de los demás según al fórmula: SQRT(SUM(a*x^2)/SUM(a)) | ||||
Cpun interior () | · Devuelve un punto equidistante en longitud, de los dos puntos extremos. Como el centroide(), pero dentro del recorrido de la línea; parecido a la aplicación del rótulo de texto en una línea abierta | ||||
| |||||
long busca (Cpun p) | · Devuelve la posición+1 en la lista del punto p (orden en base 1) si se encuentra en ella, sino devuelve 0 | ||||
bool dentro (Cpun p) | · Trata la lista como si fuera un área cerrada y devuelve distinto de 0 si el punto 'p' está dentro del recuadro definido por limite() | ||||
bool intersectan (Crec r) | · Devuelve distinto de 0 si las "líneas" virtuales definidas por los dos puntos del recuadro 'r' intersectan con la "línea" definida por la lista | ||||
long distancia (Cpun p) | · Devuelve distancia sobre recorrido de la peperpendicular desde el punto 'p' a la línea | ||||
Cpun a_distancia (long dist, long desp=0) | · Devuelve un punto sobre el recorrido de la lista de puntos, a una distancia 'dist' del punto inicial. Se puede especificar un desplazamiento 'desp' en paralelo (positivo por la derecha en sentido creciente, o negativo) | ||||
Cpun perpendicular (Cpun p) | · Devuelve un punto que es equivalente al vector perpendicular si se considera el origen (0,0), desde el punto 'p' hasta la línea | ||||
| |||||
Cpunl interseccion (Cpunl punl) | · Lista ordenada con los puntos de interseción de la lista 'pl' con el objeto | ||||
Cpunl invierte () | · Lista con los puntos del objeto invertido su orden del último al primero | ||||
Cpunl recorrido (long dis1, long dis2, long desp=0) | · Lista de parte de los puntos del objeto, recorridos desde la distancia 'dis1' hasta 'dis2'. Se puede especificar un desplazamiento 'desp' en paralelo (positivo por la derecha en sentido creciente, o negativo por la izquierda) | ||||
Cpunl tubo (long ancho, cadena mod) | · Lista cerrada con la paralela envolvente al recorrido del objeto con una nancho 'ancho' y modificadores: i0(incremento de largo en porcentaje ancho) c1(con corrección) a0(solo_abiertas) | ||||
Cpunl flecha (Cpun pun1, Cpun pun2, long ancho, long largo) | · Lista de puntos que dibujan una flecha | ||||
Cpunl poligono (long centro, long radio, long lados, cadena mod="") | · inserta centrado en el punto 'centro' un poligono de 'lados'; mod: c1(Cerrado) s0(Sentido reloj) g0(Grados punto incial) | ||||
OBSOLETO usar polígono | |||||
Cpunl copia (eliminacolineales=0) | · Devuelve otra lista de puntos copia del objeto, si eliminacolineales elimina los puntos intermedias a una distancia menor de eliminacolineales al segemento entre el anterior y el siguiente | ||||
| |||||
cadena ac (cadena sep=",", bool std=0) | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un punto (el objeto) | ||||
cadena acad (cadena sep=",", cadena mod="") | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) | ||||
void decad (cadena cad, cadena sep=",", cadena mod="") | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un punto (el objeto) | ||||
| |||||
cadena toString () | · Sinónimo de ac(), sin parámetros |
Un objeto recuadro o rectángulo se define con 4 coordenadas: la x e y de la esquina inf. izq. y los de la esquina sup. der. En realidad es como un vector con sólo dos vértices reales
| |||||
Cpun pon (long ind) Crec pon (long x1, long y1, long x2, long y2) Crec pon (Cpun p1, Cpun p2) Crec rec | · Método por defecto para declaración de coordenadas de un rectángulo en coordenadas internas · Poniendo como único parámetro el índice 'ind' 0 ó 1, devuelve el punto de definición correspondiente · Se puede crear uno con 4 parámetros coordenadas enteras (x1,y1,x2,y2); con 2 parámetros Cpun; y asignándole otro recuadro Crec | ||||
Crec mas (double factor | Cpun pun) | · Admite un nº real 'factor' positivo o negativo, que se suma a las coordenadas del recuadro; o bien un desplazamiento sumando y/o restando las coordenadas de un punto 'pun'; o se puede especificar con otro objeto recuadro cuyas coordenadas sirven de desplazamiento x e y | ||||
Crec por (double factor) | · Nº real por el que multiplicar las coordenadas x e y, para agrandar o reducir el recuadro | ||||
masi (double factor | Cpun pun) | · mas igual, como mas pero sobre la misma lista | ||||
pori (double factor) | · por igual, como por pero sobre la misma lista | ||||
| |||||
long x1 | · Devuelve la coordenada horizontal del primer punto (inf. izq.) del recuadro | ||||
long y1 | · Coordenada vertical del primer punto | ||||
long x2 | · Coordenada horizontal del segundo punto (esquina sup. der.) | ||||
long y2 | · Coordenada vertical del segundo punto | ||||
| |||||
long xm | · Coordenada x del punto medio del recuadro (xx/2) | ||||
long ym | · Coordenada y del punto medio del recuadro (yy/2) | ||||
Cpun med | · Punto medio del recuadro (centro) | ||||
long xx | · Medida de longitud horizontal (x2-x1) | ||||
long yy | · Medida de altura del recuadro (y2-y1) | ||||
Cpun tam | · Punto con coordenadas (xx,yy), o sea tamaño del recuadro, si se considera desde el (0,0) | ||||
double d | · Diagonal, longitud del vector (x1,y1) -> (x2,y2) | ||||
double d2 | · Diagonal al cuadrado | ||||
double area | · Nº real con el área (xx*yy) | ||||
Cpun pun (int num_vert) | · Punto con las coordenadas de cualquiera de los cuatro vértices (0..3) del recuadro, desde la esquina inf. izq. y en sentido antihorario. Dos extremos existen realmente y dos son calculados | ||||
| |||||
Crec margen (Cpun tamaño) Crec margen (long ladosx, long ladosy) | · Ensancha o reduce el tamaño del objeto partiendo del centro, bien tomando un punto como tamaño horizontal y vertical, o bien especificando ambos tamaños 'ladosx' y 'ladosy', que se aplicarán en las 4 direcciones | ||||
bool dentro (Cpun pun) | · Devuelve >0 si las coordenadas del punto 'pun' están dentro del recuadro | ||||
bool intersectan (Crec rec) | · Devuelve >0 si cualquier "borde" (virtual, ya que los lados no existen como líneas sino que están calculados) del recuadro 'rec' cae dentro del recuadro | ||||
void agrega (Crec rec, long i) | · Modifica el objeto fundiendo ambos recuadros en uno con el límite máximo que envuelva ambos | ||||
Crec copia () | · Devuelve otro recuadro copia del objeto | ||||
long diagonal_lg (Cpun pun, int que=0) | · lugar geométrico <0 a un lado de la diagonal, =0 en la diagonal, >0 al otro; que==1 distancia a la diagonal, que==2 distancia al cuadrado | ||||
Crec isotropo (Crec rec, bool reduce=o) | · Retorna rectangulo actual porporcional a "rec", si reduce igual a 0 crece. | ||||
| |||||
cadena ac (cadena sep=",", bool std=0) | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un recuadro (el objeto) | ||||
| |||||
cadena toString () | · Sinónimo de ac(), sin parámetros |
Permite acceder a los datos de archivos de rótulos de texto de la aplicación, gestionado por el programa Trasgo (que sirve para traducir todos los textos incluidos los de informes a otros idiomas)
Se puede ver un ejemplo de utilización que consiste en acceder a un sitio web de traducción de textos, y utilizarlo para buscar y traducir los rótulos aún sin traducción en uno de los leguajes del programa. Procedimiento \Colecciones especiales\ Ejemplos código\ ejetrasgo·Ejemplo de traducción automática de rótulos (Ctrasgo)
int lee (cadena arc_len) | · Lee el archivo para traducción para trabajar (habitualmente \UTIL\<idioma>.len |
int graba (cadena arc_len) | · Graba el archivo con los cambios realizados |
long num | · Número de elementos de la lista de traducción del lenguaje |
cadena tip(long ind) | · Letra con el tipo del término de índice 'ind', que puede ser: (C)omún, (M)odificado pero no grabado, (T)raducido, (N)o traducido, (O)bsoleto |
cadena esp(long ind) | · Término de índice 'ind' en el archivo base de español |
cadena tra(long ind) | · Término de índice 'ind' en el archivo de traducción del idioma correspondiente |
Tiene funciones para añadir archivos a un comprimido, descomprimirlos, listar y buscar, etc. Las funciones devuelven (como es habitual) un valor distinto de 0 si se produce algún error
Se puede ver un ejemplo de utilización de las operaciones más habituales en el informe "\Colecciones especiales\Ejemplos documentación\ejezip·Documentación gestión de archivos comprimidos (Czip)
| ||||
bool abierto | · devuelve 1 si el objeto tiene un archivo zip abierto | |||
int libera () | · cierra el archivo zip y lo libera | |||
int crea (cadena arc) | · crea archivo comprimido PARA EDICIÓN (es decir: añadir, borrar archivos, etc.) con nombre 'arc', y si ya existe lo sustituye eliminando el archivo anterior | |||
int abre (cadena arc) | · abre un archivo en formato estándar zip PARA LECTURA y lo pone como archivo de clase Czip (devuelve un objeto con el archivo) | |||
long busca (cadena arc) | · la función devuelve el valor -1 si el archivo 'arc' no se encuentra en el archivo comprimido zip abierto o creado con crea() o abre(). Si se encuentra, devuelve la posición (índice) del archivo en el zip | |||
int importa (cadena arc_ori, cadena arc_des) | · permite añadir el archivo especificado en arc_ori, al zip abierto con crea(). El arc_des puede incluir subdirectorios que se crearán dentro del archivo comprimido | |||
int exporta (cadena arc_ori | long ind, cadena dir_des) | · permite extraer un archivo de nombre arc_ori del archivo comprimido a un directorio dir_des; en vez de un nombre de archivo se puede especificar un índice de la lista ordenada de los archivos que hay dentro del comprimido · cadena exporta (cadena arc_ori | long ind) // permite extraer un archivo de nombre arc_ori del archivo comprimido a una cadena en memoria; en vez de un nombre de archivo se puede especificar un índice de la lista ordenada de los archivos que hay dentro del comprimido | |||
Cliscadl director () | · devuelve un array de elementos con los nombres de archivo del .zip |
Se almacenan como números reales en metros, que no dependen de ninguna referencia absoluta
| |||||
double pon (long ind) Dpun pon (double x, double y) Dpun pon (Dpun p) Dpun pon (Clislong coor) Dpun pon | · Método por defecto (no hace falta especificarlo) para recuperar o asignar un punto · Si como parámetro se especifica 0 ó 1, se recupera la primera o segunda coordenada del punto · Para darle valor se puede asignar un real como coordenadas 0 y 1 (Ej: p1(0)=10.2; p1(1)=12.5). Se puede asignar una lista con las coordenadas 'coor' (Ej: p1([10.2, 12.5]) ). Dar un par de parámetros (Ej: p1(10.2, 12.5) ). Asignar otro punto (Ej: p1= p3;) | ||||
Dpun mas (long factor | Dpun pun) | · Suma a cada coordenada del punto actual un factor nº real (positivo o negativo), o las 'x' e 'y' de un punto. Devuelve otro objeto | ||||
Dpun por (double val) | · Multiplica cada coordenada del punto actual un nº real 'factor' | ||||
double x () x= double i | · Devuelve o pone el valor de la coordenada x (nº real) | ||||
double y () y= double i | · Lo mismo que para la coordenada x | ||||
| |||||
double d2 (Cpun p2) | · Nº real con la distancia al cuadrado del objeto al punto p2 | ||||
double d (Cpun p2) | · Nº real con la distancia desde el objeto al p2 | ||||
Dpun med (Cpun p2) | · Punto medio entre el objeto Cpun y p2 | ||||
Dpun tam (Cpun p2) | · Punto cuya x e y representan la diferencia entre p2 y el objeto, con coordenas en (0,0) (Ej: pun=(3,7) y p2=(10,8) pun.tam(p2)=(7,1) | ||||
Dpun dis (Cpun p2, long dis) | · Punto a una distancia 'dis', positiva o negativa a partir del objeto, en el vector Cpun -> p2 | ||||
Dpun per (Cpun p2, long dis) | · Punto a una distancia 'dis', con apoyo en Cpun, en un vector perpendicular al vector Cpun -> p2 | ||||
Dpun copia () | · Devuelve un punto copia del objeto | ||||
| |||||
cadena ac (cadena sep=",", long dec=-1, bool std=0) | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) y especificando el número de decimales 'dec', por defecto, sin límite | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un punto (el objeto) | ||||
| |||||
cadena toString () | · Sinónimo de ac(), sin parámetros |
Equivalente a Cpunl, pero almacenando en BD las coordenadas de cada punto como números reales (metros)
| |||||
Dpun pun (long ind) Clis pun void pun ({double coord}...) | · Método por defecto (no hace falta especificarlo) de la lista de puntos. Con un índice 'i' como parámetro, devuelve un Dpun que es el punto indicado. También se puede hacer una asignación de una lista de coordenadas de puntos (como pl1=[x1,y1,x2,y2...] ) o con múltiples parámetros (como pl2(x1,y1,x2,y2,x3...) ) | ||||
Dpunl mas (double factor | Dpun pun) | · Admite un nº real 'factor' positivo o negativo, que se suma a cada punto de la lista; o bien un desplazamiento sumando y/o restando las coordenadas de un punto 'pun' | ||||
Dpunl por (double factor) | · Nº real por el que multiplicar las coordenadas x e y del objeto | ||||
masi (double factor | Dpun pun) | · mas igual, como mas pero sobre la misma lista | ||||
pori (double factor) | · por igual, como por pero sobre la misma lista | ||||
long num | · Devuelve o asigna el nº de puntos de la lista | ||||
long length | · Sinónimo del método 'num'; | ||||
bool cerrada | · Devuelve o asigna es estado de si la lista de puntos se debe considerar cerrada (el último punto enlaza con el primero) | ||||
void pon (cadena serie_xy | Clisdouble lista | Dpun p | Dpunl pl) | · Para inicializar un objeto añadiendo puntos a la lista. Admite como parámetros: una cadena 'serie_xy' de coordenadas seguidas x1,y1,x2,y2,x3..., una 'lista' de pares [x1,y1,x2,y2,...], un punto Dpun, u otra lista Dpunl | ||||
void agrega (cadena serie_xy | Clisdouble lista | Dpun p | Dpunl pl) | · Sinónimo de pon(), pero sumando puntos o listas, sin inicializar el objeto | ||||
void libera () | · Libera la memoria del objeto | ||||
void cierra () | · Pone el valor de cerrada() distinto de 0 | ||||
| |||||
Drec limite () | · Devuelve un recuadro con la envolvente de la lista de puntos | ||||
double area () | · Devuelve un número real con el área de la "línea" definida por la lista, siempre como si estuviese aunque no lo esté | ||||
double perimetro () | · Devuelve un número real con la longitud de la "línea" definida por la lista | ||||
Dpun medio () | · Devuelve un punto equidistante de los puntos extremos de la lista | ||||
Dpun centroide () | · Devuelve un punto equidistante de todos los puntos de la lista; parecido a la aplicación del rótulo de texto en una línea cerrada | ||||
Dpun deinercia () | · Devuelve un punto como el centroide(), pero considerando la densidad de agrupación de los demás según al fórmula: SQRT(SUM(a*x^2)/SUM(a)) | ||||
Dpun interior () | · Devuelve un punto equidistante en longitud, de los dos puntos extremos. Como el centroide(), pero dentro del recorrido de la línea; parecido a la aplicación del rótulo de texto en una línea abierta | ||||
| |||||
bool dentro (Dpun p) | · Trata la lista como si fuera un área cerrada y devuelve distinto de 0 si el punto 'p' está dentro del recuadro definido por limite() | ||||
Dpunl invierte () | · Lista con los puntos del objeto invertido su orden del último al primero | ||||
Dpunl copia () | · Devuelve otra lista de puntos copia del objeto | ||||
| |||||
cadena ac (cadena sep=",", long dec=-1, bool std=0) | · Convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) y especificando el número de decimales 'dec', por defecto, sin límite | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · Convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un punto (el objeto) | ||||
| |||||
cadena toString () | · Sinónimo de ac(), sin parámetros |
Igual que los recuadros Crec, su definición interna es como un vector con los puntos extremos
| |||||
Dpun pon (long ind) Drec pon (double x1, double y1, double x2, double y2) Drec pon (Dpun p1, Dpun p2) Drec rec | · Método por defecto para declaración de coordenadas de un rectángulo en metros. · Poniendo como único parámetro el índice 'ind' 0 ó 1, devuelve el punto de definición correspondiente · Se puede crear uno con 4 parámetros coordenadas reales (x1,y1,x2,y2); con 2 parámetros Dpun; y asignándole otro recuadro Drec | ||||
Drec mas (double factor | Cpun pun) | · Admite un nº real 'factor' positivo o negativo, que se suma a las coordenadas del recuadro; o bien un desplazamiento sumando y/o restando las coordenadas de un punto 'pun'; o se puede especificar con otro objeto recuadro cuyas coordenadas sirven de desplazamiento x e y | ||||
Drec por (double factor) | · Nº real por el que multiplicar las coordenadas x e y, para agrandar o reducir el recuadro | ||||
masi (double factor | Cpun pun) | · mas igual, como mas pero sobre la misma lista | ||||
pori (double factor) | · por igual, como por pero sobre la misma lista | ||||
| |||||
long x1 | · Devuelve la coordenada horizontal del primer punto (inf. izq.) del recuadro | ||||
long y1 | · Coordenada vertical del primer punto | ||||
long x2 | · Coordenada horizontal del segundo punto (esquina sup. der.) | ||||
long y2 | · Coordenada vertical del segundo punto | ||||
| |||||
long xm | · Coordenada x del punto medio del recuadro (xx/2) | ||||
long ym | · Coordenada y del punto medio del recuadro (yy/2) | ||||
Dpun med | · Punto medio del recuadro (centro) | ||||
long xx | · Medida de longitud horizontal (x2-x1) | ||||
long yy | · Medida de altura del recuadro (y2-y1) | ||||
Dpun tam | · Punto con coordenadas (xx,yy), o sea tamaño del recuadro, si se considera desde el (0,0) | ||||
double d | · Diagonal, longitud del vector (x1,y1) -> (x2,y2) | ||||
double d2 | · Diagonal al cuadrado | ||||
double area | · Nº real con el área (xx*yy) | ||||
Dpun pun (int num_vert) | · Punto con las coordenadas de cualquiera de los cuatro vértices (0..3) del recuadro, desde la esquina inf. izq. y en sentido antihorario. Dos extremos existen realmente y dos son calculados | ||||
Drec copia () | · devuelve otro recuadro copia del objeto | ||||
double diagonal_lg (Dpun pun, int que=0) | · lugar geométrico <0 a un lado de la diagonal, =0 en la diagonal, >0 al otro; que==1 distancia a la diagonal, que==2 distancia al cuadrado | ||||
| |||||
cadena ac (cadena sep=",", long dec=-1, bool std=0) | · convierte a cadena las coordenadas del objeto con el separador 'sep' (por defecto coma) y especificando el número de decimales 'dec', por defecto, sin límite | ||||
void dc (cadena cad, cadena sep=",", bool std=0) | · convierte desde la cadena 'cad', coordenadas separadas por 'sep', a un recuadro (el objeto) | ||||
| |||||
cadena toString () | · sinónimo de ac(), sin parámetros |
| |||||
long edicion () void edicion (bool poner) | · Sin parámetros devuelve '2' si el objeto Cbas actual está en edición, '1' si no está en edición pero la BD a la que referencia sí lo está y '0' si ésta tampoco está en edición · Con parámetro 'edi', si el valor es '1' pone tanto al ojeto Cbas actual como a la BD de referencia en edición, si es '0' los pone no editables · Se necesitan permisos de edición para utilizar este método | ||||
long exclusivo () void exclusivo (bool poner) | · Sin parámetros devuelve '2' si el objeto Cbas actual está en exclusivo, '1' si no está en exclusivo pero la BD a la que referencia sí lo está y '0' si esta tampoco está en exclusivo · Con parámetro 'exc', si el valor es '1' pone tanto al objeto Cbas actual como a la BD de referencia en exclusivo, si es '0' los pone no exclusivos · Se necesitan permisos de administrador para utilizar este método | ||||
long proveedor () | · Devuelve el SGBD que gestiona la base (1)JET (2)SQLServer (3)MySQL (4)Oracle | ||||
cadena usuario_app () | · Devuelve el nombre del usuario actual de la aplicación | ||||
cadena usuario_win () | · Devuelve el nombre del usuario actual de windows | ||||
void copia (cadena arc_dest) | · Copia la BD sobre el archivo 'arc_dest' especificado. El archivo no puede existir previamente. Devuelve '0' si la operación se ha realizado correctamente. Se necesitan permisos de administrador para utilizar este método. Equivalente a la función Base> Copia Base, excepto este método no abre la BD copiada | ||||
void chequea () | · Chequea la BD. Devuelve '0' si la operación se ha realizado correctamente. Se necesitan permisos de administrador para utilizar este método. Equivalente a la función Herramientas> Repara base | ||||
void compacta (cadena arc_dest) | · Compacta la BD sobre el archivo 'arc_dest' especificado. El archivo no puede existir previamente. Devuelve '0' si la operación se ha realizado correctamente. Se necesitan permisos de administrador para utilizar este método. Equivalente a la función Herramientas> Compacta Base, excepto este método no abre la BD compactada | ||||
int copia_tabla (Cbas basori, cadena tabla) | |||||
bool calculado () | · Devuelve '1' si todas las cantidades de la BD están calculadas en la estructura precio-cantidad-importe de la tabla RCC | ||||
void recalcula (long conide=-1) | · Recalcula las cantidades, de toda la BD por defecto. Si 'conide'>-1 recalcula un solo concepto 'conide' y sus influencias. Se necesita estar en edición para utilizar este método. Equivalente a la función Herramientas> Chequea cálculos | ||||
void calcula_todo () | · Calcula precios y horas de todos los conceptos descompuestos | ||||
void calcula_pendiente () | · Calcula precios y horas de los conceptos pendientes de calcular | ||||
cadena archivo () | · Devuelve el nombre de archivo de la BD actual con el camino absoluto | ||||
cadena dirgra () | · Devuelve el directorio base de las imágenes vinculadas (Concepto> Gráficos> Utilidades> Dir. de gra. vinculados) | ||||
cadena dirref () | · Devuelve el directorio base de las referencias externas (Concepto> Propiedades> Tipo referencia> Referencia> Procedimientos> Dir de referencias) | ||||
cadena dirmap () | · Devuelve el directorio base de los mapas (Proyecto> Geomapa> Cabecera> Dir referencias) | ||||
bool bajonivel () void bajonivel (bool poner) | · Si el parámetro 'poner'=1, las posteriores lecturas y grabaciones sobre los campos de la BD actuarán exlusivamente sobre los campos especificados. Si se llama sin parámetros, se recupera el valor actual en la aplicación · Las lecturas devolverán el valor real contenido en los campos de la BD · Las grabaciones se harán directamente sobre los campos especificados sin tener en cuenta otras consideraciones · Se necesitan permisos de administrador para utilizar este método | ||||
void defecto (long ide) | · Convierte el identificador 'ide' en el de defecto. También se puede realizar una asignación como: bas.defecto=1000. Es útil para cualquier flujo de programa en el que todos los métodos, propiedades, etc. se refieren al mismo concepto, y sirve de abreviatura | ||||
long actual (long que=0) | · Devuelve el identificador de la selección actual de la ventana principal (el último de los seleccionados si hay una multiselección). 'que' indica qué identificador se devuelve: (0)ide de concepto seleccionado, (1)ide del padre en RCC, (2)ide de la relación (tabla RCC) entre padre y el actual | ||||
Clis actuales (bool relacion=0, bool seleccion=0) | · Devuelve una lista de los identificadores actualmente presentes en la ventna principal, filtrados con los criterios: · Si 'relación'=1, los identificadores devueltos serán de relaciones (RCC), si no se especifica, serán de conceptos (CON) · Si 'seleccion'=1 se filtra la lista dejando sólo los multiseleccionados, sino se devuelven todos los de la lista de la ventana principal · NOTA: Existen un par de funciones no implementadas en el objeto COM, sino en JavaScript en la librería genérica "lib", pero que son de uso muy habitual con el objeto Cbas. Trabajan con las funciones actual() y actuales(): · buscaactual (long tipo, long clase=0]) - Devuelve el identificador del concepto actual en la variable 'actual' si es del tipo o clase especificados, sino aparece el mensaje de que el concepto seleccionado no es de ese tipo / clase. · buscaactuales (long tipo, long clase=0) - Devuelve una lista con los identificadores de la ventana principal en el array 'actual', si cumplen la condición de ser del tipo / clase. | ||||
bool cierra() | · Cierra la conexión a la base de datos. Devuelve 0 si la acción se ha realizado correctamente | ||||
bool reabre() | · Reabre base de datos | ||||
| |||||
bool pregunta (long ide, cadena consulta) | · Realiza una pregunta rápida sobre un campo o tabla devolviendo si existe o no (0 ó 1) cierta información en un concepto 'ide'. Utiliza las mismas búsquedas que la ventana Proyecto> Características, que se muestran en la columna Info de ventana principal · El parámetro 'consulta' admite: · 'tabla.campo.condato', nos indica si el valor de un campo del registro con identificador 'ide' de una tabla NO ES NULO · 'tabla.campo.existe | existe1 | existe2', nos indican si en un campo de una tabla, existe, existe una única vez, o existe más de una vez, el valor 'ide' (para consultas de relaciones). Ej: 'rcc.des.existe2' comprueba si 'ide' tiene más de un ascendiente en la tabla RCC | ||||
Cbas.Cbasrec busca (cadena select_sql) | · Crea y devuelve un objeto recordset con todos los registros recuperados por la sentencia select | ||||
Cvar busca1 (cadena select_sql) | · Devuelve el campo o [campos] definidos del primer registro especificado en la búsqueda sql. Útil para utilizar el identificador devuelto directamente. Devuelve el valor 0 si no encuentra nada | ||||
[] buscaN (cadena select_sql, campos_maximo=-1) | · Devuelve los [registros] con el campo o [campos] definidos de cada registro especificado en la búsqueda sql. Se puede limitar el número máximo de campos por registro a devolver | ||||
{} buscaC1 (cadena select_sql) | · Devuelve el objeto con los {campos} definidos del primer registro especificado en la búsqueda sql | ||||
[{}] buscaCN (cadena select_sql, campos_maximo=-1) | · Devuelve los [registros] con los objetos con los {campos} definidos de cada registro especificado en la búsqueda sql | ||||
void ejecuta (cadena comando_sql) | · Ejecuta una sentencia SQL excepto Select ya que no devuelve ningún resultado. El la función complementaria a las busca*(). Para utilizar este método la BD ha de estar en edición y el usuario ha de tener los permisos de administrador. Si la operación da error el script se interrumpe | ||||
| |||||
Cbas.Ctabla tabla (long num | cadena cod) Cbas.Ctabla tabla (long tip, long cla) | · Crea y devuelve un objeto tabla de BD. Un método abreviado es especificar el nombre de tabla tras el objeto base. Ej: bas.tab <-> bas.tabla(tab) · El parámetro 'num' nos indica la posición de la tabla dentro de la lista de tablas que contiene la BD · El parámetro 'cod' nos indica el código o nombre de la tabla · Los parámetros 'tip' y 'cla' nos indican el tipo y clase de conceptos de los que obtendremos su tabla | ||||
Cbas.Cdefcam defcam () Cbas.Cdefcam defcam (cadena tabcam, bool buscaenbases=1) | · Crea y devuelve un objeto Cbas.Cdefcam. · El parámetro 'tabcam' ha de tener el formato <tabla>.<campo>. El objeto Cdefcam se cargará con la definición del <campo> perteneciente a la <tabla>. Hay una sintaxis abreviada sin el nombre de la función: bas.<tabla>.<campo> · 'buscaenbases'=1 indica que el <campo> puede no pertenecer físicamente a la <tabla> pero sí a una tabla de nivel más básico (clase>tipo>concepto) · También hay una notación abreviada para tablas que se relacionan de forma "N a N" como el caso de identificadores de concepto (tabla CON) con identificadores del rótulos (tabla ROT): <tabla>.<campo>.<campo>.<campo>... Ej: rot.res(doc.pagi) <-> doc.pagi.res | ||||
long tabnum () | · Devuelve el número de tablas del objeto BD | ||||
Cbas.Ctabla tiptab (cadena codigo) (long tip, long cla=0) | · Devuelve un objeto Ctabla. Los parámetros 'tip' y 'cla' representan el tipo y clase de los conceptos que contine la tabla devuelta | ||||
cadena tipcod (cadena codigo) (long tip, long cla=0) | · Devuelve el código de la tabla con conceptos del tipo y clase especificados | ||||
cadena tipres (cadena codigo) (long tip, long cla=0) | · Devuelve la descripción de la tabla con conceptos del tipo y clase especificados | ||||
long tipico (cadena codigo) (long tip, long cla=0) | · Devuelve el identificador del icono de los conceptos del tipo y clase especificados. Este índice se refiere a la posición en el bitmap \Graficos\icotip16.bmp | ||||
cadena tipresres (cadena codigo) (long tip, long cla=0) | · Devuelve la descripción del tipo más la descripción de la clase a partir de los números de tipo y clase especificados | ||||
long tipnum (cadena codigo) (long tip=0) | · Devuelve el número de tipos del objeto (si 'tip' es igual a'0') o de clases de un tipo en concreto (si 'tip' es distinto de '0') | ||||
cadena tipresplu (cadena codigo) (long tip, long cla=0) | · Devuelve la descripción en plural de la tabla si existe, sin no la descripción | ||||
| |||||
seguridad_copia (cadena arc) | · Copia la seguridad de la base actual a la base indicada por el archivo 'arc'. Para realizar esta acción el usuario ha de ser administrador en las dos bases. Devuelve 0 si realiza la acción correctamente | ||||
acceso (cadena cod) | · Devuelve si 0 si el usuario actual no tiene permiso para realizar las acciones correspondientes al código de seguridad 'cod' | ||||
acceso_agrega (cadena gru, cadena acc) | · Para el grupo de seguridad con código 'gru', agrega la restricción para el permiso con código 'acc'. Devuelve distinto de 0 si ha ocurrido algún error. | ||||
| |||||
long deci () void deci (long dec) | · Sin parámetro devuelve el número de decimales para los importes | ||||
long decu () void decu (long dec) | · Sin parámetro devuelve el número de decimales para las unidades | ||||
long decp () void decp (long dec) | · Sin parámetro devuelve el número de decimales para los precios | ||||
long decc () void decc (long dec) | · Sin parámetro devuelve el número de decimales para las cantidades | ||||
long decm () void decm (long dec) | · Sin parámetro devuelve el número de decimales para las mediciones | ||||
long decr () void decr (long dec) | · Sin parámetro devuelve el número de decimales para los rendimientos | ||||
long decd () void decd (long dec) | · Sin parámetro devuelve el número de decimales para las dimensiones | ||||
long decs () void decs (long dec) | · Sin parámetro devuelve el número de decimales para los subtotales | ||||
cadena fori (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de los importes | ||||
cadena foru (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de las unidades | ||||
cadena forp (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de los precios | ||||
cadena forc (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de las cantidades | ||||
cadena form (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de las mediciones | ||||
cadena forr (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de los rendimientos | ||||
cadena ford (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de las dimensiones | ||||
cadena fors (double val) | · Devuelve el parámetro 'val' con formato de cadena y con el número de decimales de los subtotales | ||||
| |||||
long conrescrea (long tip, long cla, cadena res) | · Crea un concepto del tipo 'tip', clase 'cla' y con resumen 'res' y devuelve el identificador del concepto creado · Se crea con el código siguiente al último existente | ||||
long conresbusca (long tip, long cla, cadena res, long que=0) | · Devuelve el identificador del concepto de tipo 'tip', clase 'cla' y resumen 'res' · Si el parámetro 'que' es igual a '-1', si existe devuelve el identificador y lo elimina, si no existe devuelve '0' · Si el parámetro 'que' es igual a '0', si existe devuelve el identificador, si no existe busca algún concepto del mismo tipo y clase que contenga el resumen especificado y devuelve su identificador · Si el parámetro 'que' es igual a '1', si no existe lo crea y además devuelve el identificador · Si el parámetro 'que' es igual a '2', si existe devuelve el identificador con signo negativo, si no existe lo crea y devuelve el identificador | ||||
long concreasino (long tip, long cla, cadena cod, cadena res, long que=1) | · Devuelve el identificador del concepto de tipo 'tip', clase 'cla' y código 'cod' · Si el parámetro 'cod' es "" y 'res' tiene el formato <código> <resumen>, el parámetro 'cod' tomará el valor de <código> y 'res' tomará el valor de <resumen> · Si el parámetro 'res' es "" y 'cod' tiene el formato <código> <resumen>, el parámetro 'cod' tomará el valor de <código> y 'res' tomará el valor de <resumen> · Si el parámetro 'cod' es "" y 'res' no tiene el formato anteriormente dicho, este método se comporta como el método Cbas.conresbusca · Si el parámetro 'que' es igual a '0', si existe devuelve el identificador, si no existe devuelve '0' · Si el parámetro 'que' es igual a '1', si no existe lo crea y además devuelve el identificador · Si el parámetro 'que' es igual a '2', si existe devuelve el identificador con signo negativo, si no existe lo crea y devuelve el identificador | ||||
Clislong conhijos (long ide, cadena donde="raf", cadena tablas="") | · Devuelve una lista de identificadores de conceptos inferiores mediante al concepto 'ide' · El parámetro 'donde' puede incluir: r1(relaciones) a0(ascendiente) f0(familia) p0(propiedades) n0(no_en_tablas) o0(orden 0codigo 1resumen); tablas: {tabla;} · Por defecto, la lista devuelta está ordenada por código. Si 'o1', será por resumen | ||||
bool contabelimina (cadena tab, bool todas_las_clases=0) | · Elimina todos los conceptos de la tabla 'tab'. Si la tabla es de tipo y todas_las_clases=1, se eliminarán todas las clases del tipo; Se necesita tener permisos de administrador · bool contabelimina (long tip, long cla, bool todas_las_clases=0) // Elimina todos los conceptos del tipo 'tip' y clase 'cla'. Si cla=0 y todas_las_clases=1, se eliminarán todas las clases del tipo; Se necesita tener permisos de administrador | ||||
bool contabcambia (long coni, cadena tab) | · Cambia el concepto de tabla | ||||
bool confunde (long con1, long con2) | · Funde dos conceptos, borra el primero y traslada sus referencias al segundo | ||||
bool conpargraba (long coni, cadena datos_par) | · Graba un texto con un programa paramétrico 'datos_par' en el concepto con identificador 'coni'. Devuelve '0' si la operación se ha realizado correctamente | ||||
cadena codsiguiente (long tip, long cla=0, cadena mas="") | · Devuelve el siguiente código al último existente de tipo 'tip y clase 'cla', según la serie de la máscara 'mas' | ||||
| |||||
long rotrescrea (long tip | cadena tabla.campo, cadena res) | · Crea un rótulo del tipo 'tip' o el del campo tabla.campo y con resumen 'res' y devuelve el identificador del rótulo creado | ||||
long rotresbusca (long tip | cadena tabla.campo, cadena res, long que=0) | · Devuelve el identificador del rótulo de tipo 'tip' o el del campo tabla.campo y resumen 'res' · Si el parámetro 'que' es igual a '-1', si existe devuelve el identificador y lo elimina, si no existe devuelve '0' · Si el parámetro 'que' es igual a '0', si existe devuelve el identificador, si no existe busca algún rótulo del mismo tipo que contenga el resumen especificado y devuelve su identificador · Si el parámetro 'que' es igual a '1', si no existe lo crea y además devuelve el identificador · Si el parámetro 'que' es igual a '2', si existe devuelve el identificador con signo negativo, si no existe lo crea y devuelve el identificador | ||||
long rotbusca (long tip | cadena tabla.campo, cadena cod, long que=0) | · Devuelve el identificador del rótulo de tipo 'tip' o el del campo tabla.campo y código 'cod' · Si el parámetro 'que' es igual a: (0)normal[retorna ide si existe] (1)creasinoexiste[retorna ide si existe/creado] (-1)eliminasiexiste[retorna ide antiguo si ok] | ||||
long rotcreasino (long tip | cadena tabla.campo, cadena cod, cadena res, long que=1, bool buscaencomun=1) | · Devuelve el identificador del rótulo de tipo 'tip' o el del campo tabla.campo y código 'cod' · Si el parámetro 'cod' es "" y 'res' tiene el formato <código> <resumen>, el parámetro 'cod' tomará el valor de <código> y 'res' tomará el valor de <resumen> · Si el parámetro 'res' es "" y 'cod' tiene el formato <código> <resumen>, el parámetro 'cod' tomará el valor de <código> y 'res' tomará el valor de <resumen> · Si el parámetro 'cod' es "" y 'res' no tiene el formato anteriormente dicho, este método se comporta como el método Cbas.rotresbusca · Si el parámetro 'que' es igual a '0', si existe devuelve el identificador, si no existe devuelve '0' · Si el parámetro 'que' es igual a '1', si no existe lo crea y además devuelve el identificador · Si el parámetro 'que' es igual a '2', si existe devuelve el identificador con signo negativo, si no existe lo crea y devuelve el identificador · Si el parámetro 'buscaencomun' es 1 y existe 'cod' y no existe el rótulo en la base y que<>0, busca el rótulo en el común y lo traslada si lo encuentra | ||||
| |||||
long rcg_principal (long conide, bool relacion=0) | · Por defecto devuelve el identificador de la primera imagen asociada (tabla GRA) al concepto con identificador 'conide'. Si 'relacion'=1, devuelve ide de la primera relación en la tabla RCG. Ambos están en campos virtuales con._rcgi y con._grai | ||||
long ide= gralee (cadena arc, long vin=-1, cadena cod="", long que=2) | · Inserta una nueva imagen en la BD y devuelve su identificador en la tabla GRA. Se devuelve 0 si hay un error · El parámetro 'arc' es el nombre de archivo de la nueva imagen · El parámetro 'vin' indica si deseamos vincular la imagen, por defecto · El parámetro 'cod' permite especificar otro código que no sea el nombre de archivo · El parámetro 'que', determina qué hacer cuando ya existe el código de gráfico 'cod': (0)preguntar, (1)ignorar la importación (2)-defecto-sobreescribir el de la base, (3)renombrar el nuevo · Después de la carga de un gráfico, se suele asociar a un concepto mediante una llamada: bas.rcg.creasino (ide_con, ide_gra) | ||||
cadena gragraba (long ide, cadena destino, long resolucion=2) | · Exporta a un archivo la imagen de BD con identificador 'ide'. Si tiene éxito se devuelve el nombre del archivo grabado con el camino completo; sino se devuelve 0 · Si el parámetro 'destino' es un directorio, el archivo destino irá a este directorio con el código de la imagen como nombre de archivo · Si el parámetro 'destino' es un archivo, éste será el destino modificando la extensión por la indicada en el código de la imagen de la BD a grabar · El parámetro 'resolucion' indica: (0)diapositiva, (1)media definición, siempre incrustada, (2)-defecto- alta definición o real, (3)alta o media definición, según se trate de bitmaps o vectoriales | ||||
| |||||
bool importa (cadena archivo, cadena modtra="", long presenta=0) | · Importa un archivo con formato inx. Si la aplicación lo permite también importa archivos con formato bc3 · Sólo para los archivos .BC3, el parámetro 'modtra' indica un archivo .TRA de modos de traslado. El parámetro 'presenta' indica si se presenta al termino del método un archivo .LOG · Necesita estar en edición y tener permisos de importación | ||||
bool exporta (cadena archivo, cadena modtra="") | · Exporta un archivo con formato inx. Si la aplicación lo permite también exporta archivos con formato bc3 · Sólo para los archivos .BC3, el parámetro 'modtra' indica un archivo .TRA de modos de traslado · Necesita tener permisos de exportación | ||||
| |||||
json= json_propiedades (long ide, cadena que="") | · [{var=val...},...]; que: s(incluye campos sin dato) r(incluye campos de rótulo) | ||||
json= json_conceptos (cadena select, cadena que="") | · [{var=val...},...] | ||||
json= json_select (cadena select, cadena que="") | · [{var=val...},...] | ||||
json= json_tabla (cadena tabla, cadena que="") | · [{var=val...},...] | ||||
json= json_diferencia (Cbas &bas2, cadena &select, cadena &campos_no="") | · {crear:[],modificar:[],eliminar:[]}; campos_no="|campo|{campo|}", order by algo sino ide | ||||
json= json_diferencia_tablas (Cbas &bas2) | · "tipos=[[n],[m],[e]]\r\ncampos=[[n],[m],[e]]\r\n" | ||||
json= json_diferencia_conceptos (Cbas &bas2, cadena clase, bool compara_codigos=0, cadena &campos_no="") | · {crear:[],modificar:[],eliminar:[]}; campos_no="|campo|{campo|}" | ||||
json= json_diferencia_relaciones (Cbas &bas2, cadena &select, cadena &campos_no="") | · {crear:[],modificar:[],eliminar:[]}; campos_no="|campo|{campo|}" | ||||
bool json_sincro_tablas (cadena json12, bool esprueba) | |||||
| |||||
bool panrotcrea (long roti | cadena tabcam) | · Abre la ventana de rótulos (clasificaciones) con los valores de una tabla especificando el identificador 'roti', o el nombre de tabla y campo 'tabcam', como bas.panrotcrea('inm.dirvia') | ||||
bool pannuecrea (cadena tabla="car", cadena modificadores="", cadena titulo="", long copiaide=10) bool pannuecrea (long tip=1, long cla=0, long copiaide=10) | · Abre la ventana de creación de nuevos conceptos, por defecto con tipo carpeta, sin clase. Si se especifica un identificador en 'copiaide', se permite crear el concepto a partir de la copia de las propiedades de ese · tabla: <código_tabla>[.<código_concepto>][ <descripción_concepto>] · modificadores: f0(fecha) n0(número) c1(copia) r0(relaciona) t0(tipo) p1(propiedades) | ||||
long panclaselec (cadena titulo long tip=0, long cla=0, long solodetip=0) | · Abre el dialogo e selección de clases de concepto y retorna el identificador de la clase seleccionada(1000*tip+cla) o 0 | ||||
bool panvenlee (cadena codven) | · Abre la ventana de la aplicación con el código 'codven': · TEX=Textos, TER=Términos, GRA=Gráficos, COE=Parámetros generales, UTI=Utilidades, WEB=Herramientas de Web, FIE=Entrada/Salida de Conexión ADO · ADO=E/S General, IMP=Informes y Procedimientos, BUS=Búsqueda General, BUC=Búsqueda por Términos, TES=Búsqueda en Lenguaje Natural · TIP=Tipos y Clases de conceptos, ROT=Clasificaciones, HIS=Histórico de campos · PRO<numtip> indicando un nº de tipo, abre la ventana de propiedades de ese tipo. Ej: PRO1 abre las propiedades de Carpeta · PAR=Paramétricos · CONMAN=Mantenimiento y datos económicos · MAPGEO=Geomapas, MAPPRO=Utilidades de Mapas | ||||
bool manvenlee (cadena arc_mac) | · Presenta la configuración de ventanas propuesta en el archivo 'arc_mac' del directorio correspondiente a la resolución actual, bajo el directorio \Ventanas | ||||
bool panpresenta (cadena sql, cadena cab="") bool panpresenta (Clis idel, cadena cab="", long rel=0) | · Presenta en la ventana principal una lista de conceptos con una cabecera concreta · El parámetro 'sql' ha de ser una sentencia Select de SQL que devuelva como primer campo identificadores de conceptos · El parámetro 'cab' indica una cabecera concreta para presentar en la ventana principal · El parámetro 'idel' ha de contener una lista de identificadores a conceptos o a relaciones · El parámetro 'rel' indica si vale '0' que los identificadores del parámetro 'idel' son de conceptos, si no son de relaciones | ||||
bool pandibuja (long que=0) | · Redibuja la ventana principal, actualizando los datos dependiendo del parámetro 'que': (5)archivo (4)modos edición, exclusivo, calculado (3)camino actual (2)modo lista, padre (1)concepto (0)redibuja. Cada nivel envuelve al anterior y significa un redibujado de más partes de la ventana principal | ||||
bool panlinea (long ide) | · Redibuja la línea de la ventana principal que contine al concepto con identificador igual a 'ide' | ||||
bool panabre (cadena arc="", cadena camino="", long paralelo=0) | · Abre la BD 'arc' en la ventana principal, o en la paralela si 'paralelo'=1. Se posiciona en el camino 'camino', si existe | ||||
bool pancierra (bool paralelo=0) | · Cierra ventana principal de la instancia actual, o la paralelo si 'paralelo'=1. Si se cierra la principal, se cierra la aplicación | ||||
bool panprofoco (long tip, long confoco=1, long creasino=1) | · Pone el foco en la ventana de propiedades de los conceptos de tipo 'tip' · Si el parámetro 'confoco'=0 y la ventana está en segundo plano, no se pasa a primer plano · Si el parámetro 'creasino'=0 y la ventana no estaba abierta, no se abre | ||||
bool panproforzado (long ide, long confoco=1, long creasino=1) | · Fuerza a la ventana de propiedades del concepto con identificador 'ide' a presentar a éste y pone la ventana en modo forzado · Si el parámetro 'confoco'=0 y la ventana está en segundo plano, no se pasa a primer plano · Si el parámetro 'creasino'=0 y la ventana no estaba abierta, no se abre | ||||
bool panprovirtual (long ide, long confoco=1, long creasino=1) | · Fuerza a la ventana de propiedades del concepto con identificador 'ide' a presentar a éste y pone la ventana en modo virtual · Si el parámetro 'confoco'=0 y la ventana está en segundo plano, no se pasa a primer plano · Si el parámetro 'creasino'=0 y la ventana no estaba abierta, no se abre | ||||
bool vencambia (tip) | · Refresca la ventana de propiedades de los conceptos de tipo 'tip'. Si la operación se realiza correctamente devuelve '0' | ||||
| |||||
cadena incluir (cadena codinf) | · Incluye el código script de un informe de la BD actual con código de concepto 'codinf'. El objeto por defecto es la base de datos 'comun' (que se encuentra en el directorio raíz de la instalación), es decir: comun.incluir(), por lo que no hace falta especificarlo. Sólo si estamos en otra BD y se incluye código de la propia BD, hay que especificarlo | ||||
long screjecuta (cadena xjs, cadena par="") | · Ejecuta el archivo 'xjs' con la cadena de parámetros 'par'. Devuelve el siguiente número a la última página impresa | ||||
Cbas.Ccalcan (long raiz=1, bool solocarpetas=0) | · Calcula cantidades a partir del identificador de concepto 'raiz' y devuelve un objeto Ccalcan. Si el parámetro 'solocarpetas'=1 sólo calcula con el campo cantidad entre conceptos de tipo carpeta | ||||
Clis descompuestos (long coni, long acumulado) | · Devuelve una lista de descompuesto del concepto con identificador 'coni' | ||||
genera_pdf (long ide, cadena inf, cadena arc, cadena param) | · Ejecuta el informe 'inf' para el concepto con identificador 'ide' y genera un archivo PDF que lo graba en la ubicación indicada por 'arc'. Antes puede ejecutar el código script 'param' | ||||
| |||||
utiorg_trocea (cadena que_mas_mod, bool esprueba=0) | · Trocea carpetas de búsqueda con subcarpetas de búsqueda por: que máscara_de_conceptos_a_trocear modificadores · que: "alfa" mod: m-1(máximo_por_carpeta) n20(mínimo_por_carpeta) d0(doble lista) c0(con_cantidad) · que: "padre" mod: n2(niveles) g0(copia_gráficos) o0(order_by_cod) · que: "fecha" mod: a1(por años) d1(por décadas) s1(por siglos) · que: "campo" mod: n1(niveles) · DISP_E_MEMBERNOTFOUND; | ||||
| |||||
Clis ord_programa (long fecini, long fecfin, Clis idel) | · Devuelve una lista de MPs con fechas programadas y preventivas entre las fechas inicial y final · Los parámetros 'fecini' y 'fecfin' indican el intervalo de fechas a tratar · El parámetro 'idel' ha de ser una lista de identificadores a MPs · La lista devuelta tiene como elementos otras listas con tres elementos. El primer elemento es el identificador del MP, el seguendo es una lista de fechas programadas y el tercero una lista de fechas previstas | ||||
int ord_genera (long fecini, long fecfin, Clis idel) | · Monta las OTs correspondientes al intervalo comprendido entre la fecha inicial y final para los MPs indicados · Los parámetros 'fecini' y 'fecfin' indican el intervalo de fechas a tratar · El parámetro 'idel' ha de ser una lista de identificadores a MPs | ||||
long orden_crea (long coni=0, long fec=0, cadena cod=CC, cadena res=CC, long cla=0) | · Crea una OT correctiva y devuelve el identificador de la OT creada · El parámetro 'coni' es el identificador del concepto que recibirá la OT · El parámetro 'fec' es la fecha de la OT · El parámetro 'cod' es el código de la OT. Si 'cod' es una máscara se obtendrá el siguiente código según la máscara · El parámetro 'res' es el resumen de la OT. Si 'res' no tiene valor se utilizará el resumen del concepto identificado por 'coni' · El parámetro 'cla' indica la clase de la OT que se creará | ||||
int orden_preventiva_crea (long mani, long fecpro=0, long fecpre=0, cadena cod=CC, cadena res=CC) | · Crea una OT preventiva. Si la operación ha sido realizada correctamente devuelve '0' · El parámetro 'mani' es el identificador de un MP · El parámetro 'fecpro' es la fecha programada de la OT · El parámetro 'fecpre' es la fecha prevista de la OT · El parámetro 'cod' es el código de la OT. Si 'cod' es una máscara se obtendrá el siguiente código según la máscara · El parámetro 'res' es el resumen de la OT. Si 'res' no tiene valor se utilizará el resumen del concepto objeto de la acción y el resumen de la acción especificados en el MP | ||||
Cima calendario (long coni, long fecini, long fecfin, long esvectorial=0) | · Devuelve una imagen con el calendario de un Grupo de trabajo comprendido entre la fecha inicial y final. Esta imagen puede ser vectorial o no · El parámetro 'coni' es el identificador de un Grupo de trabajo. Si el valor es '0' muestra el calendario de todos los grupos · Los parámetros 'fecini' y 'fecfin' indican el intervalo de fechas a tratar · El parámetro 'esvectorial' indica si la imagen a obtener será vectorial o no | ||||
| |||||
int actividades_monta (long acci, long monta_consumos=0) | · Monta MPs de la acción con identificador 'acci'. Si 'monta_consumos' es igual distinto de '0', además, monta los consumos. Si la operación se ha realizado correctamente devuelve '0' | ||||
int actividades_desmonta (long acci) | · Desmonta los MPs de la acción con identificador 'acci'. Si la operación se ha realizado correctamente devuelve '0' | ||||
| |||||
Cbas.Cpar Cpar () | · Crea un objeto Cbas.Cpar para manejo de información paramétrica | ||||
Cbas.Cima Cima () | · Crea un objeto Cbas.Cima para manejo de imágenes bitmap y vectoriales | ||||
Cbas.Cmap Cmap () | · Crea un objeto Cbas.Cmap para manejo de mapas de BD | ||||
Cbas.Cdxi Cdxi () | · Crea un objeto Cbas.Cdxi para manejo de dibujo vectorial 2D | ||||
Cbas.Cweb Cweb () | · Crea un objeto Cbas.Cweb para manejo de generación web automática desde BD | ||||
Cbas.Cfie Cfie () | · Crea un objeto Cbas.Cfie para manejo de importación/exportación mediante ADO | ||||
Cbas.Ctes Ctes () | · Crea un objeto Cbas.Ctes para manejo de términos y tesauros | ||||
Cbas.Cgesord () | · Crea un objeto Cgesord, manejador de medidas de una OT | ||||
Cbas.Cgesvia () | · Crea un objeto Cgesvia, manejador de vías | ||||
Cbas.Cgesdis () | · Crea un objeto Cgesdis, manejador de disponibilidades horarias | ||||
Cbas.Cgestra () | · Crea un objeto Cgestra, manejador de disponibilidades y necesidades de personas y horas de grupos de trabajo | ||||
Cbas.Cgesfes () | · Crea un objeto Cgesfes, manejador de festivos | ||||
| |||||
[]= bas.ga_espacio_familias (espacio, mod) | · monta estructura de familias de elementos en el espacio y acumula cantidades en ellas; código o ide del espacio | ||||
[]= bas.ga_familia_espacios (familia, mod) | · monta estructura de espacios de elementos de la familia y acumula cantidades en ellas; código o ide de la familia · modificadores: s0(con grupos superiores) e0(con elementos) b0(busca en subgrupos) · retornan: [{ide:identificador, niv:nivel, uni:unidad, num:número, can:cantidad}]; // niv: (0)elementos (1..)grupos | ||||
| |||||
panbusqueda () | · Ahora panpresenta() | ||||
gespar () | · Ahora Cpar() | ||||
dibima () | · Ahora Cima() | ||||
dibmap () | · Ahora Cmap() | ||||
Cbas.Ctabfie Ctabfie () | · Ahora Cfie() | ||||
consultor_importar() | · Cargaba datos externos recibidos por e-mail de un cliente HTML llamado 'consultor' | ||||
programa() | · Ahora con ord_programa() | ||||
cuadrante() | · Ahora con ord_programa() |
Para trabajar directamente con registros, seleccionados por ejemplo con la función bas.busca()
Cbas bas | · Objeto Cbas, BD a la que pertenece la tabla del registro |
bool final () | · Devuelve el valor verdadero (1) cuando llega al final del conjunto (no quedan registros en el Recordset) |
void siguiente () | · Pasa al siguiente registro el puntero del Recordset |
long filnum | · Número de filas del Recordset |
long camnum | · Número de campos o columnas del Recordset (tabla) |
cadena camcod(long num) | · Código del campo con número 'num' |
long camtip (long num | cadena cod) | · Tipo del campo al que se accede mediante su 'num' o 'cod'. Los tipos son un número con la correspondencia: |
Cvar campo (long num | cadena cod) | · devuelve el valor del campo número 'num' del recordset o con código 'cod'. También se puede acceder al valor sin la función, sólo con el nombre del campo. Ej: rec.campo("padi") <-> rec.padi |
cadena campof (long num | cadena cod) | · Igual que campo(), pero con el valor formateado |
long tamano (long num | cadena cod) | · Tamaño del campo en BD de la aplicación |
long tamanoa (long num | cadena cod) | · Tamaño actual de los datos en el campo, según el interface ADO |
long tamanoa2(long num | cadena cod, bool comprimido=0) | · Tamaño actual de los datos en el campo |
Gestiona los datos del cálculo automático de cantidades en tabla RCC acumulando jerárquicamente hacia el concepto raíz
long num | · Devuelve el número de recursos | |||
long ordena (long que) | · Ordena la lista de recursos en función del parámetro 'que', (0)tipo-clase-código (1)código. Devuelve el número de recursos | |||
long simples () | · Monta la lista de recursos (sin estructura) con las cantidades totales utilizadas en el presupuesto. Devuelve el número de recursos | |||
| ||||
long ide long ide (long ide) | · Devuelve el identificador del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
long tip long tip (long ide) | · Devuelve el tipo del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
long cla long cla (long ide) | · Devuelve la clase del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
long niv long niv (long ide) | · Devuelve el nivel del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
double can double can (long ide) | · Devuelve la cantidad del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
double acu double acu (long ide) | · Devuelve la cantidad acumulada del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
cadena canf cadena canf (long ide) | · Devuelve la cantidad formateada del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
cadena acuf cadena acuf (long ide) | · Devuelve la cantidad acumulada formateada del recurso si éste está en el montaje de simples (). Si no se utiliza el parámetro 'ide' se considera el 'ide' almacenado en bas.defecto | |||
| ||||
long idei (long pos) | · Devuelve el identificador del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
long tipi (long pos) | · Devuelve el tipo del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
long clai (long pos) | · Devuelve la clase del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
long nivi (long pos) | · Devuelve el nivel del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
double cani (long pos) | · Devuelve la cantidad del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
double acui (long pos) | · Devuelve la cantidad acumulada del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
cadena canif (long pos) | · Devuelve la cantidad formateada del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. | |||
cadena acuif (long pos) | · Devuelve la cantidad acumulada formateada del recurso si éste está en el montaje de simples (). El parámetro indica la posición del recurso dentro del monaje. |
Permite ampliar y modificar el modelo de datos con nuevos campos particulares además de los predefinidos en una base en blanco
| ||||
char t () | · Devuelve un carácter abreviatura del tipo de campo: (B)ooleano (E)ntero (F)echa (G)fechahora (H)ora (R)eal (P)recio (I)mporte (C)antidad (T)exto (L)ista (I)ndice (S)elección | |||
cadena res () | · Descripción o nombre del campo | |||
cadena pad () | · Código de la tabla Cdeftab a la que pertenece el campo | |||
cadena cod () | · Código del campo | |||
cadena tip () | · Texto con el nombre del tipo | |||
long tam () | · Nº entero con el "tamaño" del campo, que en el interface es el campo Propiedades (en tipo L significa el ide de la lista al que apunta, en T el número de líneas del interface a mostrar, en I es el nº de la clase de conceptos a los que apunta, en R es el núm. de decimales) | |||
long atr () | · Definición de características internas del campo: (1)Campo NO admite cadenas de longitud cero (sólo campos texto o memo), por defecto siempre admiten cadenas vacías (2)Campo requerido (no puede ser nulo) (4)Campo autoincremental (no lo usamos en Ingra) | |||
cadena sel () | · Devuelve la lista de tablas virtuales, si como en la table REC de recursos, una tabla real se divide en varias que sólo existen de forma lógica. Devuelve una cadena como: "Especialidad;mdo|Maquinaria;maq|Materiales;mat" | |||
bool din () | · True si es dinámico (definido sobre la definición básica de BD) | |||
bool mul () | · True si está marcado como múltiple, lo que permite entradas en la tabla Histórico de campos | |||
bool noi () | · True si está marcado como no imprimible (por defecto) | |||
bool esnum () | · True si es numérico (no T,L,I,S) | |||
bool esrot () | · True si es de tipo "L" lista | |||
bool escon () | · True si es de tipo ">" referencia a concepto | |||
long uni () | · Identificador del rótulo de tipo "1·Unidad de medida" al que apunta par establecer las unidades del campo | |||
cadena _uni () | · Código de la unidad de medida | |||
| ||||
cadena ran () | · Devuelve la lista de rangos del objeto (si los tiene), el campo RAN de la tabla. Son los valores que definen el rango separados por barras verticales; si hay una inicial y final significa "menor que el primero" y "mayor que el último". Ej: "|01|15|" es una lista de 4 rangos | |||
long ranlee (long coni=0) | · Carga los rangos en una estructura en memoria para poder gestionarlos, y devuelve su número. Si se especifica un ide de concepto 'coni', se devuelve el rango particular definido en concreto para una relación concepto-campo (tabla histórico) | |||
cadena ranrot (long ind, long resumen=1) | · Devuelve el rótulo del rango 'ind'. Por defecto la descripción; si 'resumen'=0 devuelve el código o valor que define ese rango | |||
cadena ransel (long ind, long orden=1) | · Devuelve una select SQL para el rango de posición 'ind', con los identificadores de concepto que cumplen el rango. Le impone a la select el 'orden': (0)sin orden (1)por ide de campo, descendiente (2)tipo-clase-código | |||
| ||||
Ctabla tab () | · Devuelve una tabla objeto Cbas.Ctabla al que pertenece el campo | |||
cadena codigo () | · Devuelve una cadena con el formato "tabla.campo" | |||
cadena tabcam () | · OBSOLETA Devuelve una cadena con el formato "tabla.campo" | |||
cadena tabcod () | · Código de la tabla | |||
cadena tabres () | · Descripción de la tabla | |||
long tabtyc () | · Nº del tipo.clase (tipo*1000+clase) | |||
long tabtip () | · Nº del tipo de la tabla | |||
long tabcla () | · Nº de clase de la tabla | |||
| ||||
cadena tabcod0 () | · Código de la tabla original de lectura (puede ser derivada de tab) | |||
cadena tabres0 () | · Descripción de la tabla original de lectura (puede ser derivada de tab) | |||
| ||||
Ctabla padtab () | · Devuelve un objeto tabla con la tabla "padre" del campo: ROT a la que apunta si el campo es de tipo (L)ista, o la del tipo/clase de concepto al que apunta si es de tipo referencia (>) | |||
long padtyc () | · Nº del tipo.clase (tipo*1000+clase) de la tabla "padre" | |||
long padtip () | · Nº del tipo de la tabla "padre" | |||
long padcla () | · Nº de clase de la tabla "padre" | |||
| ||||
Cvar val (long ide) | · Permite asignar o recuperar un valor en el campo (se puede usar como función con el parámetro 'ide' o con asignación) | |||
cadena valf (long ide) | · Valor del campo formateado | |||
long dec () | · Devuelve el nº de decimales si es de tipo numérico (R)eal, sino 0 | |||
Cvar formato (Cvar valor, bool sincodigo=0) | · Formatea un 'valor' con la definición del objeto. Ej: si se pone un double en un campo entero, lo redondeará sin decimales, o si es de tipo L, se devolverá una cadena como "Código·Resumen" del concepto al que se apunta · Con 'sincodigo'=1 en los campos de referencias (a conceptos o rótulos), se omite el código | |||
| ||||
void lee (tab.cod, bool buscaenbases) | · Función de carga de un campo | |||
int define (cadena datos, bool prueba=0) | · Permite crear un campo con la misma sintaxis que desde interface de ventana, mediante una cadena con: num_tab·codigo·letra_tipo·tamaño descripción. Ej: "100·binmue·R·3 Precio final" | |||
| ||||
tipf () | · Ahora t() |
cadena cod () | · Código de índice |
cadena cam () | · Lista de códigos de los campos a los que se aplica separados por barras verticales (Ej: en CON, "tip|cla|cod" para el índice principal) |
long tip=0 | · Nº con los siguientes bits indicando el tipo de índice: (1)Índice único, no tiene duplicados (2)Índice primario PK (4)Índice admite nulos (8)Índice ignora nulos, sólo tiene sentido si admite nulos · Ej: para un índice único y clave primaria: 1+2= 3 |
| ||||
cadena res | · Devuelve la descripción de la tabla | |||
cadena pad | · Devuelve el código de la tabla padre de la tabla en cuestión | |||
cadena cod | · Devuelve el código de la tabla | |||
cadena cod1 | · Devuelve el código del primer campo, si existe, que conforma la clave de la tabla | |||
cadena cod2 | · Devuelve el código del segundo campo, si existe, que conforma la clave de la tabla | |||
cadena cod3 | · Devuelve el código del tercer campo, si existe, que conforma la clave de la tabla | |||
cadena tab1 | · Devuelve el código de la tabla padre del primer campo, si existe, que conforma la clave de la tabla | |||
cadena tab2 | · Devuelve el código de la tabla padre del segundo campo, si existe, que conforma la clave de la tabla | |||
cadena tab3 | · Devuelve el código de la tabla padre del tercer campo, si existe, que conforma la clave de la tabla | |||
cadena pos | · Devuelve el código del campo utilizado para posicionar los registros | |||
cadena pospad | · Devuelve el código del campo padre utilizado para posicionar los registros. El campo posición se organizará en función de los registros que tengan el mismo valor para el campo padre de posición | |||
long deftip | · Devuelve el tipo de tabla según la siguiente clasificación: (0)cualquier tabla (1)con campo ide (2)con código único (3)con tipo y código único (4)con tipo, clase y código único (5)con campo ide dependiente de otra tabla (6)con campo padre (7)con campos padre e hijo (8)con campos padre, hijo e hijo2 | |||
long bastip | · Devuelve el tipo de tabla según la siguiente clasificación: (1)tabla relación concepto-auxiliar (4)tabla auxiliar (7)tabla relación concepto-concepto (9)tabla de propiedades o extensiones (10)tabla de conceptos | |||
long unico | · Si la tabla es de relaciones N:N y sólo puede existir un único registro por cada relación, devuelve 1. En los demás caso devuelve 0 | |||
| ||||
long doctip | · Si la tabla es de propiedades de conceptos, devuelve el tipo de estos. Si no lo es, devuelve 0 | |||
long doccla | · Si la tabla es de extensiones de conceptos, devuelve la clase de estos. Si no lo es, devuelve 0 | |||
long ide | · Devuelve el identificador de la tabla actual asignado en la tabla de tipos 'tip'. Sólo para tablas de propiedades o extensiones | |||
long ico | · Devuelve el icono asociado a los conceptos pertenecientes a la tabla. Sólo para tablas de propiedades o extensiones | |||
long dim | · Devuelve la dimensión o geometría asociado a los conceptos pertenecientes a la tabla. Sólo para tablas de propiedades o extensiones | |||
long din | · Devuelve 1 si la tabla es dinámica y 0 en caso contrario no. Sólo para tablas de propiedades o extensiones | |||
long rgb | · Devuelve el color RGB asociado a los conceptos pertenecientes a la tabla. Sólo para tablas de propiedades o extensiones | |||
long blo | · Devuelve el bloque asociado a los conceptos pertenecientes a la tabla. Sólo para tablas de propiedades o extensiones | |||
long clafam | · Devuelve la clase asociada a la familia | |||
long clapad | · Devuelve la clase asociada al ascendiente | |||
long clahij | · Devuelve la clase asociada a los descendientes |
Estos objetos, como Cima no se BD, Cgrf o Cdxi, se deben crear uno por cada gráfico distinto a representar en una misma línea, (los objetos no se liberan hasta que se imprime una línea sin bloqueo), pero en distintas líneas se pueden (y deben) reutilizar los mismos objetos
| |||||
int conlee (long coni, long num=-1, long resolución=3, cadena mod="") | · Carga en el objeto, la imagen número 'num' (el primer gráfico es 0 si no se especifica ninguno) del concepto con identificador 'coni'. Opcionalmente se puede especificar la 'resolución' de la imagen que se carga: (0)diapositiva, (1)media, (2)alta resolución; mod: e1(gdi+) | ||||
int gralee (long grai, long resolución=2, cadena mod="") | · Carga en el objeto la imagen, el gráfico con identificador 'grai' de la tabla de gráficos (no de la de relaciones entre conceptos y gráficos). Opcionalmente se puede especificar la 'resolución' igual que en le método anterior | ||||
int exporta (long grai, long resolución=2, cadena mod="") | · Graba en un archivo externo el gráfico 'grai', con las mismas opciones de 'resolución' que en los métodos anteriores | ||||
int importa (long grai) | · Carga un archivo externo en la B.D., con el identificador 'gri' indicado | ||||
| |||||
con () | · Ahora conlee() | ||||
gra () | · Ahora gralee() |
| |||||
long fac=1000 | · Factor que multiplicado por las unidades internas da metros; el valor de defecto es 1000=mm. Habrá que reducirlo a 100 para abarcar un espacio de coordenadas superior al tamaño de la península aproximadadmente, y trabajar con precisión de cm | ||||
Cpun ref void ref (Cpun ref) | · referencia absoluta de base a las coordenadas internas. Se define en kms | ||||
Crec rec void rec (Crec rec) | · recuadro máximo de todos los mapas del geomapa Ctabmap en coordenadas internas (mm normalmente) | ||||
Drec rec_m void rec_m (Drec rec_m) | · recuadro máximo del geomapa en metros | ||||
Cdxi Cdxi() Cdxi modos() int modos(dxi) | · define o asigna un objeto Cdxi con la cabecera (factor, referencia y modos actuales) del geomapa de BD | ||||
<varios> de_m (double d | Dpun p | Drec r | Dpunl pl) | · pasa de metros a coordenadas internas, las del objeto pasado como parámetro (distancia, punto, recuadro o lista de puntos) | ||||
<varios> a_m (long d | Cpun p | Crec r | Cpunl pl) | · a la inversa que de_m(), pasa objetos en coordenadas internas a metros | ||||
| |||||
Cdxi exporta (cadena whe="", Crec zom=0, cadena mod="", cadena cnf="") | · recorte a formato dxi de los datos filtrados desde el dxi actual, por los modos y otros parámetros; sin parámetros crea un dxi con los modos actuales de la base · El parámetro 'mod' de modificadores admite: · m0 <identificador Mapa> c0 <identificador Capa> e0 <Escala normalizada> v0 <solo Visibles> i0 <Incompleto> x0 <eXpande referencias M> · f0 <conFiguración: (0)grabada (-1)geomapa actual (>0)identificador> · n1 <compacta: (1)compacta (2)compacta y elimina No utilizados> · r0 <Recorta: (0)no (1)elimina incompletas (2)mantiene incompletas (3)recorta líneas y mantiene bloques (4)recorta líneas y elimina bloques> · g0 <Georreferencia: (0)no (1)graba en cada entidad variable ";conil='id,id'"> · El parámetro 'zom' especifica un recuadro de recorte del objeto, y 'cnf' especifica el código de una de las configuraciones guardadas en pestaña: Proyecto> Geomapa> ventana Capas> Configuraciones | ||||
Cdxi exporta0 (cadena cnf="") int exporta0 (Cdxi &dxi) | · exporta cabecera, capas y bloques de base de datos a un nuevo dxi o al que se pasa por parámetros. Si no se especifica configuración, es la actual | ||||
int exporta1 (Cdxi dxi, cadena whe="", Crec zom=0, cadena mod="") | · sólo para exportaciones especiales, guarda en dxi es resto de información que no son modos de exporta0(), ni definición de capas y bloques, es decir, los geos de información | ||||
Cdxi exporta_mapa (long|cadena map, cadena mod="", cadena cnf="") | · equivalente a exporta("", 0, "m<mapi>"+mod+cnf); recorte especifico para mapa, indicando ide o código en 'map' | ||||
Cdxi exporta_capa (long|cadena cap, cadena mod="", cadena cnf="") | · equivalente a exporta("", 0, "c<capi>"+mod+cnf); recorte especifico para capa, indicando ide o código en 'cap' | ||||
Cdxi exporta_bloque (long|cadena blo) | · exporta bloque a dxi | ||||
bool importa_bloque (long|cadena blo, Cdxi dxi) | · importa bloque de dxi | ||||
int importa (Cdxi dxi, long agrega=0) | · carga la información de un objeto Cdxi sobre el actual. Según el parámetro 'agrega': (0)elimina información origen, dejando los modos y estructura (1)funde la información sin eliminar del objeto origen (2)elimina solo las capas cargadas (no funde las capas que estén en 'dxi') | ||||
int importa1 (Cdxi dxi) | · carga al información geográfica (geos) sobre el objeto actual sin modos, ni información de estructural de capas ni bloques. Similar en filosofía a exporta1() | ||||
int referencia (Cdxi dxi, Crec zom=0, cadena mod="", cadena cnf="") | · filtra el geomapa de la BD referencia externa (pestaña Geomapa> Varios) con los parámetros de recorte, modificadores y configuración, y se lo agrega al 'dxi' | ||||
| |||||
Cpun mapcon_pun (long ci) | · Devuelve el centroide de todas las georreferencias del concepto con identificador 'ci' en coordenadas internas | ||||
Dpun mapcon_pun_m (long ci) | · Devuelve el centroide de todas las georreferencias del concepto con identificador 'ci' en metros | ||||
Crec mapcon_rec (long ci) | · Devuelve el recuadro envolvente de todas las georreferencias del concepto con identificador 'ci' en coordenadas internas | ||||
Drec mapcon_rec_m (long ci) | · Devuelve el recuadro envolvente de todas las georreferencias del concepto con identificador 'ci' en metros | ||||
long mapcon_crea (long ci, long gi, long di, long ide=0, long que=0) (long ci, Cdxient ent, long ide=0, long que=0) | · Devuelve el identificador de la tabla mapcon con el registro creado al dar de alta una relación entre el concepto con identificador 'ci' y el ente 'ent'. También se pueden pasar los datos del ente como geo+dato ('gi', 'di') · ide: para_reescribir; que: (0)creasino (1)graba (2)reescribe | ||||
bool mapcon_lineas_une (long ci1, long ci2) | · Une las georreferencias de c1 y c2 y las asigna a c1, retorna 0 si las une y 1 si no | ||||
bool mapcon_linea_parte (Cdxient &ent, long coni2) | · parte la entidad por el punto seleccionado y asocia el resto a coni2 | ||||
bool mapcon_linea_crea (long|Cpun ci1, long|Cpun ci2, long ci, cadena capa=<tabla>) | · Crea una línea que une los centroides de ci1 y ci2 georreferenciada a ci | ||||
bool mapcon_bloque_crea (Cpun pun, long ci, cadena capa=<tabla>) | · Crea un bloque en el punto pun en capa y bloque con el código de la clase de ci y el mapa con el código del tipo de ci | ||||
bool mapcon_capa_cambia (long ci, cadena mapa=<tipo>) | · Cambia de mapa las georreferencias del concepto | ||||
bool mapcon_capa_cambia (long ci, cadena capa=<clase>) | · Cambia de capa las georreferencias del concepto | ||||
Cdxient entidad (long ci) (cadena cc) (long gi, long di) | · Devuelve la primera entidad asociada al concepto con ide 'ci', o con código 'cc' o la entidad identificada por geo+dato ('gi', 'di') | ||||
bool entidad_cambia (long ci, Cdxient &ent) | · Cambia la primera entidad asociada al concepto 'ci'. Si 'ent' no tiene capa, mapa, geo o posisión maniente los datos anteriores · bool entidad_cambia (Cdxient &ent) // Cambia la entidad 'ent' por su nuevo contenido (no puede cambiar la identificación de la entidad: mapi-capi-ide-posi) | ||||
bool entidad_agrega (long ci, Cdxient &ent) | · Agrega la entidad 'ent' y la asocia a 'ci'. Si 'ent' no tiene mapa pone el mapa con el código del tipo de 'ci' (lo crea si no existe). Si 'ent' no tiene capa pone la capa con el código de la clase de 'ci' (la crea si no existe). · bool entidad_agrega (Cdxient &ent) // Agrega la entidad 'ent'. 'ent' debe tener mapa y capa | ||||
| |||||
long mfon=0 | · fondo en color blanco (por defecto es negro) | ||||
long mbyn=0 | · mostrar colores en sólo blanco/negro (defecto en color) | ||||
long mbro=1 | · rellenar líneas cerradas y regruesar (por defecto está activado) | ||||
long ment=0 | · rellena entrelazando la referencia de fondo, | ||||
long mdob=0 | · rellena con doble pasada (redibujando contornos de las capas bajo capas rellenas sólidas) | ||||
long mxyz=0 | · modo de visualización de coordenadas (0-3) | ||||
long mpis=5 | · tipo de pista a visualizar (0-5) | ||||
long meje=0 | · visualizar ejes con características definidas en pestaña Cabecera | ||||
long msel=0 | · mostrar números de vértices de la selección (selección extendida) | ||||
long mtex=1 | · modo de visualización de textos, desde con máxima calidad, pasando por recuadrado, hasta no dibujar. Los valores son (1,5,3,7,2,0) | ||||
long mblo=1 | · visualización de bloques, mismos valores que texto | ||||
long marc=1 | · visualización de círculos, mismos valores que texto | ||||
long mcua=1 | · visualización de referencias (recuadros, mapas y ortofotos), mismos valores que texto | ||||
long mcal=0 | · incremento de calidad (positivo o negativo) para forzar visualización de escalas normalizadas superiores o inferiores a cada zoom | ||||
| |||||
long mtra= | |||||
long minc= | |||||
long maju= | |||||
cadena imafil="" | · filtro de referencias ortos, admite un nombre de filtro de los espeficados para el objeto Cima, con sus parámetros, el filtro se aplicac en tiempo real a las ortofotos | ||||
cadena imadir="" | · camino relativo o absoluto al dxi, cuando es un archivo, con el directorio donde se encuentran los archivos .dxi a los que hacen referencia los entes de tipo Mapa (referencias externas) del dxi | ||||
cadena imadir2() | · directorio_de_base absoluto y desrrefernciados los link | ||||
obsoleto | |||||
long muso=30 | · HUSO (zona y hemisferio), por defecto es 30 (UTM del centro de España), admite número de uso positivo (al norte del ecuador) y negativo | ||||
cadena datum="ED50" | · DATUM (elipsoide y proyección), por defecto es "ED50" (Europeo actual) | ||||
long mman= | |||||
long mari=0 | · margen interno del perímetro máximo del dibujo al 'papel', en porcentaje del tamaño total del dxi | ||||
long mare=0 | · margen externo del 'papel' a la ventana, en porcentaje del tamaño total del dxi | ||||
long ejex=0 | · distancia horizontal entre ejes en metros (para mostrar con el modificador meje=1) | ||||
long ejey=0 | · distancia vertical entre ejes en metros | ||||
long ejet=0 | · tamaño en metros de las cruces intersección de ejes (por defcto contínuos) | ||||
long emin=0 | · escala global mínima del dxi (aplicable para incorporar en BD como mapa y escalar); desde interface no se puede modificar | ||||
long emax=0 | · escala global máxima del dxi | ||||
| |||||
long ven_mapi | |||||
long ven_escn | · escala normalizada que más se acerca a la de la ventana | ||||
double ven_escala | · escala real actual de la ventana | ||||
Crec ven_zom | · coordenadas del recuadro visible actualmente en la ventana, en coordenadas internas | ||||
Drec ven_zom_m | · coordenadas del zoom actual de la ventana en metros | ||||
Cdxi ven_dxi | · ?referencia al dxi actual en mapas | ||||
int ven_invalida (long bloqueo=1, bool update=0) | · 'bloqueo' es el modo de refresco de los datos de la ventana :(0)no actualizar (1)redibuja (2)releer (3)releertodo. Si 'update'=1 redibuja inmediatamente | ||||
Cdxicapl ven_capas | · capas seleccionadas en ventana de capas | ||||
Cdxiblol ven_bloques | · bloques seleccionados en ventana de bloques | ||||
Clislong ven_conceptos | · conceptos seleccionados (con georreferencias seleccionadas) | ||||
int ven_presenta (pun|rec|punl|Cdxi|coni|conil) | |||||
| |||||
Cdxi ana_dxi | · referencia al análisis actual en mapas (si lo hay) | ||||
bool ana_activa | · activa/desactiva análisis en la ventana Geomapa | ||||
| |||||
Crec maprec (long mapi | Cadena cod) | · rectángulo límite de mapa, admite identificador ó código de mapa | ||||
Crec caprec (long capi | Cadena cod) | · rectángulo límite de capa, admite identificador ó código de capa | ||||
Clislong dentro (long coni | Crec rec | Drec rec | Cpunl punl, cadena select="", bool simple=0) | · devuelve una lista de identificadores de concepto (tabla CON) o de la tabla de relaciones de entes con conceptos (tabla MAPCON de georreferencias) que están incluidos dentro de los límites de una entidad 'coni', o de un recuadro 'rec' en coordenadas internas o en metros, o de una lista de puntos · el tipo de identificadores a buscar se puede restringir con una claúsula 'select' SQL, · devuelve un identificador de concepto (tabla CON) o de la tabla de relaciones de entes con conceptos (tabla MAPCON de georreferencias) que está mas cercano al centroide de la entidad 'coni', o de un punto en coordenadas internas o en metros · el tipo de identificadores a buscar se puede restringir con una claúsula 'select' SQL, la búsqueda es conveniente restringirla con un margen (en metros) | ||||
Clislong dentro_mapcon ( ) | · con los mismos parámetros que dentro(), con select_de_mapcon y devuelve una lista de ides de la tabla MAPCON | ||||
Clislong dentro_con ( ) | · con los mismos parámetros que dentro(), con select_de_con y devuelve una lista de identificadores de concepto | ||||
long cercano_mapcon (long coni | Cpun pun | Dpun pun, cadena select_de_mapcon, double margen) | · devuelve el identificador de mapcon mas cercano dentro de margen o cero | ||||
long cercano_con (long coni | Cpun pun | Dpun pun, cadena select_de_con, double margen) | · devuelve el identificador de con mas cercano dentro de margen o cero | ||||
igual que cercano_con | |||||
| |||||
int dibuja_geodat (Cdxicap cap | Cdxi dxi, Clis geo_dat | cadena geo_dat, cadena mod="") | · mod: e(escn) r(limite x1:y1:x2:y2) b0(bloque ide) · devuelve un objeto capa o un mapa Cdxi con los elementos seleccionados, la selección de entes se puede hacer en el segundo parámetro mediante un lista de arrays con el par [geo,ente], o con una cadena de texto separando geo y dato mediante barras verticales (como "geo1|ente1|geo2|ente2...") · se puede forzar la escala para no devolver los entes seleccionados a escala real (por defecto), si no existe escalado | ||||
int dibuja_mapcon (Cdxicap cap | Cdxi dxi, select_de_mapcon | Clislong mapcons | "{mapcon|}", cadena mod="") | · como dibuja_geodat() pero admite como parámetro un select, una lista o una cadena de identificadores de la tabla MAPCON | ||||
int dibuja_con (Cdxicap cap | Cdxi dxi, select_de_con | Clislong cons | "{con|}", cadena mod="") | · como dibuja_geodat() pero admite como parámetro un select, una lista o una cadena de identificadores de la tabla CON | ||||
Cdxi analiza (cadena parser) bool analiza (cadena parser, Cdxi dxi) bool analiza (cadena parser, cadena adxi, cadena mod="") | · genera dxi de análisis, documentación del parser en ventana de análisis, copiar al portapapeles | ||||
int entD_geo2utm (cadena dirgeo, cadena dirutm, long huso, long datum) | · convierte archivos MDT de datos de coordenadas .HGT de un directorio 'dirgeo' que están recortadas con una proyección de coordenadas geográficas (longitud y latitud) a una proyección en UTM, en el directorio 'dirutm' teniendo como referencia el huso y datum · pasa de una rejilla con cuadriculas de 1º (1201x1201 cuadros de 3seg 90min) a cuadrículas de 100km (1001x1001 cuadros de 100m) | ||||
Cdxi entD_perfil (Cdxient ent | Cpunl punl, cadena modificadores="i0 d1 r4 p20 h0 v2", cadena titulo="") | · Monta el perfil de una entidad o de una polilinea. Debe existir una capa "mdt_hgt" con el directorio de alturas · Modificadores: i1= sentido inverso de la línea desde el cero, dibujar de izq. a derecha); d0= doble vista, por encima del eje x desde el cero al final de la línea, y por debajo del eje, la vista en sentido contrario · r<num>= es el factor de realzado de las alturas en el perfil; p[-]<num>= profundidad de la vista en kms, si el nº es negativo es una proporción de la longitud en 'tanto por uno', es decir, -0.5 es la mitad de la longitud · h(0-2)= visualizar guías horizontales para cotas: (1)500m (2)100m; v(1-2)= mostrar guías verticales: (1)líneas (2)números · si no hay título de toma el texto de la entidad | ||||
Cdxi entD_panoramica (Cdxient ent | Cpun pun, cadena modificadores="i0 d1 r4 p20 h0 v2", cadena titulo="") | · Monta la panoramica desde el punto 'pun' o desde el centroide de la entidad 'ent'. Debe existir una capa "mdt_hgt" con el directorio de alturas · Modificadores: r2 es el factor de realzado de las alturas en el perfil; p32 profundidad de la vista en km, b4 tamaño de las bandas en Km · h500= visualizar guías horizontales cada multiplo de cota en m; v1 mostrar guías verticales · si no hay título de toma el texto de la entidad | ||||
| |||||
Cdxi geomedia (cadena archivo_mdb, cadena tabla, cadena campos, cadena modif="m0 z0") | · ?importa datos de un archivo con formato de Geomedia, a un objeto Cdxi. El archivo de base de datos con las coordenadas tiene el formato de 'campos': codigo, resumen, capa · modificadores: tras 'm' se puede especificar el máximo número de registros a importar; si z1 cargar en el atributo de texto la coordenada z (altura de cada punto) | ||||
int desplaza (Cpun des, cadena select_de_geos) | |||||
| |||||
· Ver dibuja_geodat() | |||||
int dibuja (Cdxicap cap | Cdxi dxi, Clislong mci | cadena mci, escala=0) | · similar a dibuja_geodat() pero el segundo parámetro admite una lista de identificadores tanto de concepto (tabla CON) como de georreferencias ente-concepto (tabla MAPCON); este parámetros puede ser bien un array, o bien en una cadena con la barra vertical como separador (como "mapconide1|mapconide2|..." ó "coni1|coni2|coni3|...") | ||||
| |||||
pro_traslada (cadena parser) | · "masmap=...;mascap=...;tipo=...;..." | ||||
pro_referencia (cadena parser) | · "masmap=...;mascap=...;tipo=...;..." | ||||
pro_desreferencia (cadena parser) | · "masmap=...;mascap=...;tipo=...;..." | ||||
pro_exporta_shp (cadena parser) | · "masmap=...;mascap=...;tipo=...;..." | ||||
pro_procesa (cadena parser) | · "masmap=...;mascap=...;tipo=...;..." | ||||
pro_tematicos (cadena parser, long que=0) | · "lim=...; cons=..."; que:(0)procesa (1)prueba (2)portapapeles (3)blockdenotas (4)presenta_dxi · if (nombre == "pro_campos_utm") return 504; // pro_campos_utm (cadena parser) // "masmap=...;mascap=...;tipo=...;..." | ||||
| |||||
mapas_a_utmxy (cadena clase, cadena mod) | · de mapa a campos utmx,utmy; lee capa de clase | ||||
utmxy_a_mapas (cadena clase, cadena mod) | · de campos utmx,utmy a mapa; graba en mapa de tipo, capa de clase y bloque de concepto, de clase o de tipo. | ||||
| |||||
bool mapa_de_clase (cadena clase, cadena archivo="", cchar *mod=0) | · crea dxi con las georreferencias de la clase o del tipo y lo graba en archivo o en directorio_base/codigo_tip.dxi; modificadores: t0(contabla) p1(presenta) · bool mapa_de_clase (cadena clase, Cdxi &dxi, cchar *mod=0) // igual que anterior, pero graba en dxi | ||||
bool mapa_de_concepto (cadena concepto, cadena archivo="", cchar *mod=0) | · crea dxi con las georreferencias del concepto y de sus descendientes y lo graba en archivo o en directorio_base/codigo_conepto.dxi; modificadores: t0(contabla) p1(presenta) · bool mapa_de_concepto (cadena concepto, Cdxi &dxi, cchar *mod=0) // igual que anterior, pero graba en dxi | ||||
bool mapa_clip (cadena concepto, Cdxi &dxi) | · pone la georreferencia del concepto como región de recorte, se desactiva después de dibujar |
Con estas funciones se puede acceder a y manipular la información definida en lenguaje paramétrico tanto escrito en forma tradicional como en Javascript. Hay dos ejemplos de utilización de la información paramétrica en la carpeta '\Colecciones especiales \Base de datos'.
int lee (long ide) | · Lee y calcula la lista completa de atributos de la clase creada por la variable objeto Cpar, y permite acceder a las siguientes funciones: |
long parnum () | · Número de parámetros de la familia |
cadena parrot (long par) | · Nombre del parámetro 'par' |
long opcnum (long par) | · Número de opciones a elegir del parámetro número 'par' |
cadena opcrot (long par, long opc) | · Rótulo de la opción número 'opc', en base 0, para el parámetro 'par' de la familia |
long opcmax () | · Número máximo de todas las opciones de los parámetros, es decir, número máximo de entre todas las opcnum () de la familia |
long opctot () | · Número total de combinaciones dentro del paramétrico |
long opcval () | · Número de combinaciones válidas, dentro de opcto |
long opcinv () | · Número de combinaciones no válidas |
int calcula (long num | cadena cod) | · Calcula no los datos existentes en la familia, sino del derivado seleccionado en el conjunto de opciones de parámetros cod_derivado, y permite acceder a las siguientes funciones: |
cadena codigo () | · Código del derivado paramétrico calculado con calcula() |
cadena unidad () | · Unidad del derivado |
cadena resumen () | · Resumen del derivado |
cadena texto () | · Texto extenso del derivado |
cadena pliego () | · Pliego del derivado |
cadena referencia () | · Referencia del derivado |
cadena grafico () | · Grafico del derivado |
cadena descom () | · Devuelve una lista con todos los descompuestos que tenga el paramétrico. Cada elemento de la lista tiene el formato separado por barras verticales: · <código_derivado>|<cantidad>|<factor>| y si el derivado existe (el código_derivado se encuentra) se rellenan además: |<ide_concepto>|<unidad>|<resumen>|<precio>. · El <ide_concepto> es negativo cuando se trata de un derivado paramétrico. Si el derivado no se puede calcular en la base, no se devuelve ningún error, pero no se devuelve la segunda parte de los datos. |
double precio () | · Precio del derivado |
double coste () | · Precio del derivado |
int presupuesto (long ide_doc, long ide_doclin) | · Si la aplicación contiene el tipo Presupuesto, se puede acceder a un presupuesto, mediante el identificador que devuelve esta función al pasarle un identificador de concepto tipo Documento y el identificador de una línea de documento (en tabla doclin) |
Clase que implementa las herramientas necesarias para la exportación/importación en el objeto (como hace la ventana al abrirse) y permite controlar todos los datos del a BD a la que se conecta, y todos los modos y funciones de la ventana.
int conlee (long ide) | · Carga los datos estructurados asociados al concepto con identificador 'ide' de la clase Entrada-Salida ADO | ||||
int congraba (bool forzado=0) | · Graba los datos estructurados asociandolos al concepto cargado anteriormente mediante el método 'conlee'. Si 'forzado' es igual a 0, sólo grabará si existen cambios | ||||
int ejecuta (bool esprueba=0, cadena arc_log) | · Ejecuta la configuración actual, equivalente al botón Prueba o EJECUTA, dependiendo del modo 'esprueba'. Si existe 'arc_log', se guardan en un archivo de texto con el camino, nombre y extensión especificados, todos los mensajes que produzca la importación/exportación; se van añadiendo los mensajes de cada ejecución al final del archivo | ||||
int exporta (bool esprueba=0, cadena arc_log) | · Exporta la configuración actual (igual que ejecuta, pero forzando en el objeto el modo mimp=0) | ||||
int importa (bool esprueba=0, cadena arc_log) | · Importa la configuración actual (igual que ejecuta, pero forzando en el objeto el modo mimp=1) | ||||
void chequea () | · Chequea BD cargando tablas y campos con la configuración actual | ||||
void analiza () | · Analiza los datos de campos de la configuración actual, cargando los datos en las columnas | ||||
void libera () | · Descarga de memoria la configuración actual del objeto | ||||
cadena arc | · Especifica nombre y camino del archivo o base de conexión | ||||
| |||||
bool mimp=1 | · Modo importa por defecto. Si 'mimp'=0, exporta | ||||
bool mbor=0 | · Modo borra | ||||
bool mcre=1 | · Modo crea si no existe | ||||
bool mree=1 | · Modo reescribe si existe | ||||
bool mnot=0 | · Modo no crea tablas (chequea) | ||||
bool mnoc=0 | · Modo no crea campos (chequea) |
NOTACIÓN: dependiendo del tipo de tabla, el parámetro 'registro' es un conjunto de datos para identificar un único registro, que pueden ser el formato:
- nada (el valor de ide por defecto establecido con el método general bas.defecto)
- un identificador: ide
- alguna de las siguientes combinaciones, según el tipo de tabla: cod, ['res'] | tip, 'cod', ['res'] | tip, cla, 'cod', ['res'] | ide1, ide2 | ide1, ide2, ide3
Como ejemplo:
· la tabla CON, puede utilizar el código (tip, cla, "cod")
· la tabla RCC utiliza dos identificadores (ide1, ide2)
· la tabla ROT de rótulos o clasificaciones (tip, "cod") donde 'tip' es un identificador de rótulo de la tabla de clasificaciones (1000*ide_tipo+ide_clase), y 'cod' es una cadena de caracteres
· las tablas GRA, TER, MAPCAP, MAPBLO... se gestionan mediante el código (cod), no es necesario más para identificarlos
| |||||
Cbas Cbas () | · Objeto BD al que pertenece la tabla | ||||
long busca (registro) | · Devuelve el ide encontrado, con los datos de 'registro' según el tipo de tabla | ||||
long crea (registro) | · Devuelve el ide del registro creado, crea el 'registro' en la tabla con la que se utilice si la tabla es de clase, se crea simultáneamente un registro en la tabla del tipo y otro en la tabla CON, los 3 con el mismo 'ide' | ||||
long creasino (registro) | · Devuelve el ide del registro buscado con los valores de 'registro' o el del creado si no existe | ||||
long copia (ide_origebn, cod_destino) | · Devuelve el ide del registro duplicado con código cod_destino y resto de campos igual que ide_origen | ||||
long creacopia (registro) | · Devuelve el ide del registro duplicado, que tiene el siguiente ide al último existente. Sólo se puede utilizar en la tabla CON | ||||
long traslada (Cbas bas2, long ide2) | · Copia el registro de 'ide2' de base 'bas2' y devuelve el ide de la copia | ||||
int elimina (long ide, bool aunque_refs=1) | · Elimina el registro con identificador 'ide' de la tabla referida. También se eliminan las referencias de la tabla RCC al registro. Si se elimina de CON, también se elimina el registro de la tabla de tipo y de la de clase (si existe). Si se elimina de una tabla de clase, lo mismo, se elimina el registro en la de tipo y en CON. · Devuelve 0 si ha tenido éxito. Si el parámetro aunque_refs=0, y el concepto tiene referencias en otras tablas (otras tablas como RCC, GRA o cualquier otra apuntándole), no se permite la eliminación | ||||
| |||||
long filnum | · Número de filas o registros de la tabla | ||||
long camnum | · Número de campos de la tabla | ||||
Cvar campo (long num | cadena cod, registro) | · Sirve para asignar o recuperar el valor de un campo, haciendo referencia a él por el número 'num' del campo o su código 'cod'. El tipo del valor devuelto depende del campo · Una sobrecarga de esta función es que sólo el código de campo 'cod' sin nombre de función, seguido del 'registro', es equivalente a: campo(cod, registro). Ej: bas.con.campo(res,ide) <-> bas.con.res(ide) · Como excepción, sólo para la tabla CAB, se admite la asignación de un valor directamente en la tabla (sin 'registro') de la forma: bas.cab.campo1="cadena" | ||||
Cvar campof (long num | cadena cod, registro) | · Igual que campo(), pero formateando la salida al recuperar el valor (por ejemplo, un entero se muestra con separador de miles). Se admite la misma sobrecarga que en campo(), es decir, usar directamente el código de campo. El tipo del valor devuelto depende del campo | ||||
| |||||
Cbas.Cdeftab deftab () | · Devuelve el objeto Cbas.Cdeftab, el cual contiene información sobre la definición de la tabla. | ||||
Cbas.Cdefcam defcam (long num | cadena cod) | · Devuelve el objeto Cbas.Cdefcam, el cual contiene infromación sobre la definición de un campo de la tabla. Accedemos a la definición de una campo mediante un nombre 'cod' o número de posición en la tabla 'num' | ||||
Cbas.Cdefind defind (long num | cadena cod | null) | · Devuelve el objeto Cbas.Cdefind, el cual contiene infromación sobre la definición de un índice de la tabla. Accedemos a la definición de un índice mediante un nombre 'cod' o número de posición en la tabla 'num' | ||||
| |||||
Cbas bas() | · Objeto Cbas, BD a la que pertenece la tabla · con formato |
long may | · mayúsculas: (0)no (1)primera (2)todas | |||
long ace | · acentos: (0)no (32bits)posiciones | |||
long reg | · reglas: tabtesreg.ide | |||
long fal | · faltas: intercambio "BVGJCZSXbvgjczsx" posición+1, "H" posición inserción o eliminación | |||
long pal2 | · palabra buscada con may,ace,reg,fal | |||
| ||||
long busca(cadena pal) | · > ide pal2 may,ace | |||
long reglas(cadena pal) | · > ide pal2 may,ace,reg | |||
long faltas(cadena pal) | · > ide pal2 may,ace,reg,fal | |||
long buscaR(cadena pal) | ||||
long buscaRF(cadena pal) |
long webi webi= long ide | cadena cod | · Identificador del concepto web actual | |||
long webcnti webcnti= long ide | cadena cod | · Identificador del controlador web actual | |||
| ||||
bool tesauro_monta (bool troceado=0) | ||||
bool tesauro_unesco (archivo_mst, que) | · q0(que: 0log 1dump 2basedatos) | |||
| ||||
bool monta_indice_json() | · monta el archivo índice.json de la web | |||
bool monta_ingra_js() | · monta el archivo ingra,js con azohc.js y el código de ejecución de todos los controladores | |||
bool genera_controlador ([cadena|long controlador]) | · ejecuta el código de generación del controlador definido o del actual | |||
| ||||
long webi webi= long | · Identificador del concepto web actual | |||
long webgrui webgrui= long | · Identificador del grupo web actual, al poner el grupo actual se pone también el concepto web actual | |||
long webcnti webcnti= long | · Identificador del controlador web actual | |||
| ||||
cadena destino | · Camino absoluto del directorio destino web | |||
bool reescribe=0 | · Modo sobreescribir las páginas al generar | |||
bool ordenpor=0 | · Modo ordena por resumen, por defecto se ordena por código | |||
Clislong degrupo (long grui, cadena filtro="") | · Lista de conceptos del grupo definido, por defecto del grupo actual; filtro admite sql reducido | |||
Clislong decontrol (long cnti=webcnti, cadena filtro="") | · Lista de conceptos del controlador definido, por defecto del controlador actual (incluye los conceptos de todos los grupos asociados al controlador); filtro admite sql reducido | |||
Clislong deweb () | · Lista de conceptos de la web con página | |||
cadena destino | · Camino absoluto del directorio destino web | |||
bool reescribe=0 | · Modo sobreescribir las páginas al generar | |||
bool ordenpor=0 | · Modo ordena por resumen, por defecto se ordena por código | |||
Clislong degrupo (long grui=webgrui, cadena filtro="") | · Lista de conceptos del grupo definido, por defecto del grupo actual; filtro admite sql reducido | |||
Clislong decontrol (long cnti=webcnti, cadena filtro="") | · Lista de conceptos del controlador definido, por defecto del controlador actual (incluye los conceptos de todos los grupos asociados al controlador); filtro admite sql reducido | |||
Clislong deweb () | · Lista de conceptos de la web con página | |||
| ||||
cadena con_pagina (long conide) | · Retorna la URL de la página del concepto o "" | |||
cadena con_imagen (long conide, long que=1) | · Retorna la URL de la primera imagen asociada al concepto con extensión jpg, gif o png; que: (1)baja (2)media (4)alta; | |||
cadena con_imagenes (long conide, cadena qima="") | · Monta json de las imágenes del concepto; mod: f(de_familia) n(número_maximo) | |||
cadena con_propiedades (long conide, cadena mod="") | · Monta json de las propiedades del concepto; mod: s0(campos_sin_dato) v0(campos_virtuales) r2(rótulos:1cod|2res) c15(conceptos:1tab|2cod|4res|8url) | |||
cadena con_concepto (long conide, cadena mod_deconcepto="") | · Monta json del concepto; deconcepto: [tabla.]campo[.campo][@modificadores] .ima .imas .texl ... | |||
cadena con_padres (long conide, cadena mod_deconcepto="", cadena sql_depadres="") | · padres:[...]; Monta json de padres; si !sql_depadres con.padi recursivo | |||
cadena con_hijos (long conide, cadena mod_deconcepto="", cadena sql_dehijos="") | · hijos:[...]; Monta json de hijos; si !sql_dehijos TIPCAR hijos, TIPFAM fami, TIPESP padi, RESTO com=ide; · [tabla.]campo{.campo}[@mod] .utm .url .ima .prol .imal .texl // mod: t(tabuladores)+con_imagen+con_imagenes+con_propiedades+con_textos · <defecto> tab, cod, res, pag:0|1. campo puede ser de concepto, propiedades o extensiones | |||
cadena con_descom (long conide, cadena mod_deconcepto="", cadena sql_dehijos="") | · descom:[...]; Monta json de descomposicón; si !sql_dehijos rcc.com; agrega variable _fac,_can,_pre,_pret | |||
cadena con_compos (long conide, cadena mod_deconcepto="", cadena sql_depadres="") | · compos:[...]; Monta json de composición; si !sql_dehpadres rcc.des; agrega variable _fac,_can,_pre,_pret | |||
cadena descendientes_por_familias (long ide, cchar *mod_deconcepto=CC, cchar *mod=0) | · hijos:[...]; con.padi; mod:e1(con elemenos) · { niv:<1..> tab:<familia> ... can _uni tab.res .url num2 can2 } · { niv:0, con_concepto(mod_deconcepto) } conceptos descendientes y de la familia | |||
cadena familiares_por_ascendientes (long ide, cchar *mod_deconcepto=CC, cchar *mod=0) | · hijos:[...]; con.fami; mod:e1(con elemenos) · { niv:<1..> tab:<ascendiente> ... can _uni tab.res .url num2 can2 } · { niv:0, con_concepto(mod_deconcepto) } conceptos familiares y del ascendiente | |||
cadena con_tablas (long conide, cadena deconcepto="", cadena dedescom="") | · Monta json de descomposicón; dehijos:sqlreducida | |||
cadena con_pagina (long conide) | · Retorna la URL de la página del concepto o "" · if (nombre == "con_mapa") return 31; // cadena con_mapa (long conide) // Retorna el código del mapa donde se encuentra el consepto | |||
cadena con_image (long conide, long que=1) | · Retorna la URL de la primera imagen asociada al concepto con extensión jpg, gif o png; que: (1)baja (2)media (4)alta; | |||
cadena con_imagenes (long conide, cadena qima="") | · Monta json de las imágenes del concepto; qima: f(de_familia) n(número_maximo) | |||
cadena con_propiedades (long conide, cadena mod="") | · Monta json de las propiedades del concepto; mos: s0(incluye campos sin dato) v0(incluye campos virtuales) r15(datos en referencias) · if (nombre == "con_hijos") return 35; // cadena con_hijos (long conide, cadena donde="", hijos="", tablas="") // Monta json de los hijos del concepto; · donde: r(rcc.com) a(padi) f(fami) p(propiedades) n(no_en_tablas) o(orden 0cod 1res) d(descomposicion) · hijos: igual que qcon · tablas: lista de tablas de concepto separadas por ';', en combinación con donde('n') filtra los tipos de conceptos a seleccionar · if (nombre == "con_descomposicion") return 35; // cadena con_descomposicion (long conide) // Monta json de los hijos del concepto; | |||
cadena con_concepto (long conide, cadena qcon="p") | · Monta json del concepto; · qcon: u(url) g(gracw) b(tabres) m(mapa) t(textos) p(propiedades) e(extension_en_ref) · if (nombre == "con_todo") return 37; // cadena con_todo (long conide, cadena qcon="p", qima="", donde="", hijos="", tablas="") // Monta json del concepto | |||
| ||||
bool con_monta_imas (cadena filtro="", cadena que="bma", cadena sql_de_gra="") | · Genera los archivos de las imágenes de los conceptos del controlador; filtro: admite sql reducido; que: b(baja) m(media) a(alta) p(número de puntos máximo de las imágenes de alta) s(subdirectorio en número de caraceres)) | |||
con_monta_tablas (cadena clases, cadena mod="") | · Genera estructura de tablas para tiempo de ejecución (controlador raiz), clases:{calse calse ...} mod: p0(esprueba) c1(concampos) · if (nombre == "con_monta_json") return 40; // bool con_monta_json (cadena filtro="", cadena qcon="p", qima="", donde="", hiojos="", tablas="") // Genera los archivos de datos json de los conceptos del controlador; filtro: admite sql reducido | |||
bool con_monta_imas (cadena filtro="", cadena que="bma") | · Genera los archivos de las imágenes de los conceptos del controlador; filtro: admite sql reducido; que: b(baja) m(media) a(alta) p(número de puntos máximo de las imágenes de alta) | |||
map_monta_tablas (cadena parser, bool esprueba=0) | · Genera estructura de tablas para tiempo de ejecución (controlador raiz) | |||
map_monta_json2 (cadena parser, cadena filtro="", bool esprueba=0) | · Genera los archivos de datos json de los conceptos del controlador; parser: { [tabla.campo[.campo][:order]] { campo } [;|\r\n] } filtro: admite sql reducido | |||
| ||||
mapa_monta (cadena parser, cadena capa, cadena modificadores) | ||||
mapa_indices ([directorio]) | · crea recursivamente dir.js, si no está definido directorio se toma: destino+"\\map" | |||
mapa_reduce (directorio, tamano=128) | · crea recursivamente reducciones de las imágenes anteponientoles "r_" al nombre | |||
map_archivo_dxi (long mapi) | · Recupera el camino completo del archvio donde se almacena el dxi del mapa | |||
map_monta_dxi (long mapi, cadena param, bool remontar=0, presentar=0) | · Genera la estructura de las cuadrículas del mapa en dxi | |||
map_monta_json (long mapi, cadena filtros) | · Genera los datos json de las cuadrículas del mapa (filtros:fent|fcap) | |||
map_monta_imas (long mapi, cadena filtros) | · Genera las imágenes de las cuadrículas del mapa (filtros:fent|fcap|fcnf) | |||
map2_monta (parser) | ||||
map2_indices ([directorio]) | · crea recursivamente dir.js, si no está definido directorio se tioma destino+"\\map" · if (nombre == "map_presenta_cons") return 1004; // map_presenta_cons (long mapi) // Presnta conceptos en mapas |
int carga (long coni, long fecini, long fecfin) | · Carga en el gestor las disponibilidades para el concepto 'coni' en cuestión. El intervalo de fechas a de ser como máximo de un año. · El parámetro 'coni' indica el concepto a calcular. Este puede ser de tipo y clase Grupo de trabajo, Persona, Equipo, Especialidad, Maquinaria y Entidad. Las disponibilidades de Equipos sólo cuentan para un Equipo o una maquinaria, en el resto de tipos y clase sólo se tiene en cuenta los horarios de Personas · Los parámetros 'fecini' y 'fecfin' indican el periodo a calcular. La fecha final no se incluye | |||
int carga_mes_dia (long coni, long fec) | · Carga en el gestor las disponibilidades de 'coni' para el mes de la fecha 'fec' | |||
int carga_ano_dia (long coni, long ano) | · Carga en el gestor las disponibilidades de 'coni' para el año indicado en el parámetro 'ano' | |||
void agrega (Cbas.Cgesdis gesdis, long fecini, long fecfin) | · Agrega al actual gestor las disponibilidades cargadas en el gestor 'gesdis' para las intervalo de fechas establecido por 'fecini' y 'fecfin' | |||
double lee (long fec) | · Devuelve la disponibilidad para la fecha 'fec' | |||
double hora (long fec) | · Devuelve la disponibilidad para la fecha 'fec' | |||
double lee (long fec) | · Devuelve el turno para la fecha 'fec' | |||
| ||||
long tipo (long fec) | · retorna el tipo de dia (perdiatip.ide) | |||
cadena titulo (long fec) | · retorna el título del día | |||
cadena tipo_cod (long fec) | · retorna el código del tipo de día (perdiatip.cod) | |||
cadena tipo_res (long fec) | · retorna la descripción del tipo de día (perdiatip.res) | |||
color tipo_rgb (long fec) | · retorna color del tipo de festivo (perdiatip.rgb) | |||
| ||||
long horas_dia (peri|perc, fec) | · retorna las horas de disponibilidad de la persona y día; horas*100 calculadas con el último(primero) perdiatip | |||
long[31] horas_mes (peri|perc, fec) | · retorna las horas de disponibilidad de la persona y mes; horas*100 | |||
long[12*31] horas_ano (peri|perc, fec|año) | · retorna las horas de disponibilidad de la persona y año; horas*100; igual que horas=campo; | |||
cadena turnos_dia (peri|perc, fec) | · retorna los turnos de la persona y día | |||
cadena[31] turnos_mes (peri|perc, fec) | · retorna los turnos de la persona y mes | |||
cadena[12*31] turnos_ano (peri|perc, fec|año) | · retorna los turnos de la persona y año; igual que horas=campo; | |||
double lee (long fec) | · Devuelve la disponibilidad para la fecha 'fec' | |||
double hora (long fec) | · Devuelve la disponibilidad para la fecha 'fec' | |||
double lee (long fec) | · Devuelve el turno para la fecha 'fec' | |||
horas*100 de cada día (31*12) - calculado con el último(primero) perdiatip | ||||
{perdiatip|} de cada día (31*12) |
Para cada concepto Orden de Trabajo, puede haber un desglose en una relación múltiple N:N de Conceptos con Acciones, y además cada relación puede tener múltiples acciones de medida con valores
| |||||
int lee (long coni) | · Lee todos los datos de la tabla y sus relaciones, y carga el objeto con ellos | ||||
long ide () | · Identificador del concepto OT | ||||
long acci () | · Ide del concepto tipo acción, que actúa como defecto en la OT | ||||
long coni () | · Ide del concepto objeto de mantenimiento por defecto (de cualquier tipo) al que apunta la OT | ||||
long num () | · Número de líneas de desglose concepto-acción de la OT | ||||
void chequea () | · Examina todas las relaciones del objeto con otros conceptos, para verificar y corregir pérdidas de integridad | ||||
| |||||
void condefecto (long i) | · Asigna como identificador el concepto de mantenimiento de desglose | ||||
long conide (long i) | · Devuelve el identificador del concepto tipo OT al que apuntan los registros de desglose de ORDCON | ||||
long conconi (long i) | · Devuelve el concepto de desglose indicado por el índice i (base 0). No hace falta especificar el índice si está definido condefecto() | ||||
long conacci (long i) | · Devuelve la acción de la línea de desglose indicada por el índice 'i' (base 0) | ||||
long connum () | · Número de líneas de desglose de la OT | ||||
void conchequea () | · Examina todas las relaciones de los conceptos de desglose para verificar y corregir pérdidas de integridad | ||||
| |||||
void meddefecto (long j) | · Asigna como línea actual de desglose de medidas, la indicada con el índice 'i' (base o) | ||||
long medide (long i, long j) | · Devuelve el identificador de la acción de la medida 'i' (o definido por meddefecto()) | ||||
long medniv (long i, long j) | · Nivel de jerarquía de la acción de medida, en base 0 (se pueden definir acciones de medida desglosadas dentro de otras de medida) | ||||
bool medesedi (long i, long j) | · Indica si la línea de medida es editable. Este valor se puede modificar con medestgra() | ||||
cadena medres (long i, long j) | · Resumen de la acción de medida | ||||
cadena medcod (long i, long j) | · Código de la acción de medida | ||||
long meduni (long i, long j) | · Identificador de rótulo de la Unidad de medida de la acción de medida | ||||
long medest (long i, long j) | · Estado de la medida (0)correcta (1)fuera de rango (2)fuera de rango, debería generar correctivo | ||||
Cvar medval (long i, long j) | · Valor de la medida para la selección Concepto-Acción actual. Devuelve cualquiera de los tipos que se pueden almacenar en BD en acciones de medida | ||||
cadena medvalf (long i, long j, que=) | · Valor medval() formateado (por ejemplo, si es booleando, un valor=1 rotulará "Si"). El parámetro 'que' se utiliza para los campos de tipo 'L' y tiene los siguientes valores y significado (0)código (1)resumen (2)código·resumen | ||||
long medtip (long i, long j, corto=0) | · Tipo del campo de medida. Si corto=1 devuelve el carácter que identifica al tipo de campo | ||||
cadena medran (long i, long j) | · Rango de valores de la medida, con valores separados por barras verticales "|" | ||||
| |||||
int medestgra (long i, long j, long estado) | · Modifica el estado de la medida referida por la terna (i,j) con el valor del 'estado' | ||||
int medvalgra (long i, long j, Cvar medval, calcula_estado=0) | · Asigna un valor en 'medval' a la terna concepto-acción-medida; puede ser de todos los tipos almacenables en una acción de medida. Si 'calcula_estado'=1, se fuerza que se calcule el estado medest() en función del rango medran() |
Clislong datos (long coni, long año, long que=0, bool horas=0) | · que: (0)disponibilidad (1)necesidad (2)diferencia, horas: nº de horas (por defecto nº de personas) |
double media (long coni, long año, long que=0, bool horas=0) | · fecha: si !dia datos mensuales si !mes datos anuales |
Clase que implementa los datos necesarios para las herramientas del tipo de concepto via, que permite modelizar inventarios lineales como ríos, carreteras, ferrocarriles, etc. y elementos puntuales sobre ellos
| ||||
void carga (long ide) | · Carga carretera de cualquier elemento de vía, con el 'ide' del concepto | |||
long ide | · Devuelve el identificador del concepto cargado en la clase | |||
Crec lim () | · Rectángulo límite de la representación gráfica del elemento | |||
long num | · Número de puntos del elemento vía | |||
Cpunl punl (long ind) | · Lista con los puntos del elemento, si se especifica un índice 'ind', devuelve ese punto | |||
Clislong disl (long ind) | · Lista de distancias o distancia del punto con índice 'ind' especificado | |||
Clislong pkl (long ind) | · Lista de Pks de todos los puntos o Pk del especificado | |||
| ||||
long dis2pk (double dis) | · Calcula Pk de una distancia real | |||
Cpun dis2pun (double dis, bool es_tramo=0) | · Crea un punto de clase Cpun con las coordenadas del la distancia 'dis', pudiendo especificar si es un tramo | |||
Cpunl dis2punl (double dis1, double dis2, double es_tramo=0) | · Devuelve una lista de los puntos de la clase desde el punto de distancia desde el origen 'dis1' hasta la distancia 'dis2' (no es una polilínea). Se puede especificar si es un tramo | |||
Clisdouble pun2dis (Cpun pun) | · Devuelve las dos distancias al punto pun | |||
| ||||
long pk2dis (double pk) | · Calcula distancia en metros reales del origen a un Pk | |||
Cpun pk2dis (double pk, bool es_tramo=0) | · Crea un punto de clase Cpun con las coordenadas de la distancia en pk 'pk', pudiendo especificar si es un tramo | |||
Cpunl pk2punl (double pk1, double pk2, double es_tramo=0) | · Devuelve una lista de los puntos de la clase desde el punto situado en 'pk1' hasta el 'pk2' (no es una polilínea). Se puede especificar si es un tramo | |||
Clisdouble pun2pk (Cpun pun) | · Devuelve par de pks al punto pun | |||
| ||||
Cdxi recuadros (long escala=1000, long maxx_cm=26, long maxy_cm=16) | · Crea un gráfico vectorial Cdxi con el objeto de vía, y el tamaño calculado en función de la 'escala' y el tamaño en cms. en horizontal 'maxx_cm' y vertical 'maxy_cm'. Los valores de defecto de los tres parámetros sirven para una escala 1:1000 y 26x16 cms que equivale a una página DIN-A4 apaisada | |||
cadena escala="v1000x26y16" | · Valores de escala y tamaño definidos en los recuadros del elemento de vía. Valores permitidos: v100..10000x10..1000y10..1000 | |||
long maxx | · Tamaño máximo horizontal de los recuadros | |||
long maxy | · Tamaño máximo vertical de los recuadros | |||
cadena cni | · Devuelve una cadena con el código del archivo de configuración equivalente 'A4h','A4v','A3h','A3v' dependiendo de los valores en cms de los atributos maxx y maxy: si x>30 cm -> A3h, si y>30cm -> A3v | |||
| ||||
linea_de_ficha_a_mapa (long ide, bool esprueba) | · admite ides de carretera | |||
lineas_de_ficha_a_mapa (bool esprueba) |
Significado de los tipos de datos utilizados: Los parámetros opcionales se expresan seguidos de un símbolo igual '='. Si estos parámetros no se especifican se tomará el valor de defecto, que es el que se muestra después del símbolo igual '='. Los métodos que no tienen parámetros se pueden utilizar sin el uso de los paréntesis '()'. Los métodos que no devuelven nada (diferente a void) y tienen un parámetro pueden expresarse como indica el siguiente ejemplo: |