4D v16.3

Escribir un método

Inicio

 
4D v16.3
Escribir un método

Escribir un método  


 

 

El editor de métodos de 4D funciona como un editor de texto. Generalmente, la escritura de un método es una combinación entre la escritura de texto, la selección de componentes y el arrastrar elementos desde el Explorador u otras ventanas. También puede utilizar varios tipos de funciones para acelerar la creación de métodos.

Puede desplazarse por el contenido de los métodos, los cuales pueden incluir hasta 32 000 líneas de código o 2 GB de texto.

El editor de métodos de 4D realiza una primera verificación de la sintaxis de los métodos. Se realizan verificaciones adicionales durante la ejecución del método.

En las versiones anteriores a 4D v15, la versión francesa del programa ofrecía un lenguaje de programación en francés, mientras que todas las otras versiones (inglés, alemán, etc.) contenían un lenguaje "universal", en Inglés.
Por ejemplo, el comando No. 53 fue llamado STOCKER ENREGISTREMENT en francés y SAVE RECORD en el resto de idiomas. La configuración local también fue utilizada para introducir números reales y las fechas.

Esto se ha ido modificado empezando con 4D v15: por defecto, el editor de métodos de 4D utiliza el modo internacional "English-US", independientemente del idioma de la aplicación 4D o la configuración del sistema local y el comando Nº 53 ahora se llama SAVE RECORD en la versión francesa de 4D. Las listas, las ventanas de tecleo predictivo, ayuda en línea, etc., muestran los nombres de los comandos y constantes en inglés. Para más información acerca de esta configuración, consulte la sección Introducción al lenguaje 4D.

Aún sigue siendo posible restaurar el modo anterior, basado en los parámetros locales, utilizando la preferencia "Usar configuración del sistema regional" (ver Página Métodos). Por supuesto, independientemente de la configuración utilizada, los principios para la escritura de código descritas en esta sección siguen siendo los mismos.

Modo 4D v15 (por defecto):


Modo local:

4D utiliza las técnicas de edición de texto estándar para escribir y editar en el editor de métodos. A medida que escribe, aparecen los caracteres en el lugar donde está ubicado el cursor. Termina cada línea presionando la tecla Retorno de carro (Mac OS) o Intro (Windows).

Nota: la tecla Intro del teclado numérico se comporta diferente a la tecla Intro del teclado principal. Utilice la tecla Intro del teclado numérico para forzar a 4D a verificar la sintaxis de la línea de código, sin pasar a la línea siguiente.

El editor de métodos utiliza convenciones de visualización por defecto (estilo, color) para los nombres de comandos, los comandos de plug-ins, los métodos, etc. Puede modificar estas convenciones (ver Editor de métodos). A medida que escribe, cuando valida su entrada, 4D evalúa el texto de la línea y aplica el formato de salida apropiado. 4D también indenta cada línea en su nivel apropiado con relación a la línea anterior cuando se utilizan estructuras de programación (por ejemplo, If, End if).

Puede utilizar las teclas de flechas para moverse rápidamente de una línea a otra. El uso de teclas de flecha para moverse por varias líneas es más rápido que hacer clic porque el editor retarda la verificación de la sintaxis de las líneas.

Bajo Windows, el editor de código incluye un IME (Input Method Editor) permitiendo facilitar la edición del código en los sistemas japonés o chino.

El editor de métodos incluye varios atajos de navegación listados a continuación en “Atajos de teclado de navegación” .

4D le permite utilizar arrastrar y soltar durante la escritura de métodos. Es posible arrastrar y soltar elementos desde el Explorador, dentro de un método o entre dos métodos.

    • Nombres de tablas, campos, formularios y métodos de proyecto desde la página Inicio.
    • Nombres de tablas y campos desde la página Tablas,
    • Nombres de tablas y formularios desde la página Formularios,
    • Nombres de métodos de proyecto y de formularios desde la página Métodos,
    • Constantes desde la página Constantes,
    • Comandos 4D desde la página Comandos,
  • Cuando arrastra y suelta un componente, 4D siempre utiliza la sintaxis apropiada para el componente. Por ejemplo, si arrastra el nombre del campo “Nombre” de la tabla [Empleados], aparece en el editor de métodos como “[Empleados]Nombre”. De la misma forma, si arrastra el nombre del formulario “Entrada” de la tabla Empleados, aparece en el editor de métodos como “[Empleados];"Entrada".
    Cuando inserta un comando arrastrándolo desde la Página Comandos del Explorador, aparece con su sintaxis (la cual consiste en todos sus parámetros), en el editor de métodos. Utilice la sintaxis que  necesite para adaptarla a su uso. Esta funcionalidad le recuerda los parámetros que el comando espera.
  • Arrastrar y soltar dentro de un método o entre dos métodos diferentes:
    En el editor de métodos, el mecanismo de arrastrar y soltar se activa tan pronto se realiza una selección de texto.
    Por defecto, el mecanismo arrastrar y soltar mueve el texto seleccionado. Para copiar esta selección, mantenga presionada la tecla Ctrl (Windows) u Opción (Mac OS) durante la operación.

Ahora puede escribir una sola instrucción en varias líneas terminando cada línea de la instrucción con el carácter "\". 4D considerará todas las líneas a la vez. Por ejemplo, las siguientes dos instrucciones son equivalentes:

Varios comandos permiten modificar automáticamente la caja de los caracteres seleccionados. Estos comandos son accesibles vía el submenú MAYÚS/minús en el menú  Método o el menú contextual del editor:

  • MAYÚSCULAS/ minúsculas: pasa los caracteres seleccionados a mayúsculas o minúsculas.
  • cameLlúsculas / CameLlúsculas: pasa los caracteres seleccionados a "camellúsculas". Esto consiste en pasar a mayúsculas cada primera letra de un grupo de palabras. Este tipo de notación se utiliza con frecuencia para la nomenclatura de variables. fechaContrato y FechaCompra son ejemplos de las dos variantes de las escritura en camellúsculas.

Cuando aplica uno de estos comandos a una selección de texto, los espacios y caracteres "_" se borran y la primera letra de cada palabra pasa a mayúsculas.

La función Invertir expresión permite reversar los argumentos de una expresión asignando un valor. Por ejemplo,

 variable1:=variable2

se convierte en:

 variable2:=variable1

Esta función es extremadamente útil para reversar un conjunto de tareas utilizadas para leer o definir propiedades o para corregir errores de entrada. Para utilizar esta función, seleccione la o las líneas a modificar, luego seleccione el comando Invertir expresión en el menú Método o en el menú contextual del área.  Dentro de la selección, sólo se modificarán las líneas que asignan un
valor.

Además de la operación estándar de copiar y pegar, 4D portapapeles ofrece dos funciones adicionales que le permiten trabajar con el contenido del portapapeles:

  • El programa conserva en memoria las últimas 10 acciones de “copiar” o “pegar” realizadas en el editor de métodos durante la sesión actual. Cada uno de los diferentes contenidos guardados puede reutilizarse en cualquier momento. Para hacer esto, utilice el comando Historial del portapapeles del menú contextual del editor de métodos o el botón “Últimos valores del portapapeles” de la barra de herramientas:

    Se muestran los primeros caracteres de los elementos copiados o cortados. La selección de un elemento provoca la inserción en la ubicación actual del cursor.
  • Nueve portapapeles numerados adicionales están disponibles y pueden utilizarse directamente utilizando las combinaciones de teclas o los botones de la barra de herramientas del editor:

    Copiar el texto seleccionado en un portapapelesPegar el contenido de un portapapeles en la ubicación del cursor
    WindowsMayús o Ctrl+Alt+clic en un icono de portapapelesCtrl+clic en un icono del portapapeles
    Ctrl+número del portapapeles Ctrl+número del portapapeles
    Mac OSMayús o Opción+clic en un icono de portapapelesCmd+clic en un icono de portapapeles
    Cmd+Mayús+número del portapapelesCmd+número de portapapeles

    Note que debe utilizar las teclas del teclado numérico o utilizar las combinaciones necesarias para acceder a las teclas numeradas del teclado alfanumérico.

Puede mover directamente la línea donde está el cursor sin tener que seleccionarla utilizando los comandos Mover hacia arriba y Mover hacia abajo en el menú Método. También puede utilizar la combinación Alt/Opción + Flecha arriba o Flecha abajo.

Barras de colores permiten visualizar instantáneamente las líneas de código que modificadas desde la apertura del método:

Las barras de cambio cambian de color para indicar si las modificaciones se guardaron o no:

  • amarillo: la línea se modificó y el método no se ha guardado aún.
  • verde: la línea se modificó y el método se guardó.

El editor de métodos tiene una función de "entrada predictiva". 4D muestra automáticamente las sugerencias basado en los primeros caracteres digitados. 

En el ejemplo a continuación, la entrada de la cadena "cop" provoca la visualización de un triángulo azul que indica que varias sugerencias están disponibles:

Nota: cuando los caracteres introducidos corresponden a una sola posibilidad, este valor sugerido aparece en gris (y se inserta si pulsa la tecla Tab):
--->

Si hay varias sugerencias disponibles, 4D las muestra en una lista desplegable cuando se pulse la tecla Tab:

La lista está en orden alfabético. Elija el valor haciendo doble clic en él o utilice las teclas de flechas del teclado y luego presione Intro, Retorno de carro o Tab para insertar el valor seleccionado.

Por defecto, también puede insertar un valor sugerido presionando una de los siguientes delimitadores ( ; : = < [ { después de seleccionar un valor: el valor se inserta a continuación, listo para la entrada.

  +  ( key -->

Nota: puede deshabilitar el uso de delimitadores para insertar valores sugeridos en la Página Métodos de las preferencias usuario.

Puede presionar la tecla Esc para cerrar la lista desplegable o puede seguir escribiendo mientras está abierta. Los valores sugeridos en la lista pop-up se actualizan en función de los caracteres adicionales introducidos.

Si los caracteres introducidos corresponden a diferentes tipos de objetos, la lista los muestra en su estilo actual. Los siguientes tipos de objetos se pueden mostrar:

  • Comandos 4D
  • Comandos SQL
  •  Métodos usuario
  • Nombres de tabla
  • Nombres de campo
  • Constantes
  • Variable local, proceso o interproceso, declarada en el método
  • Comandos de plug-in 
  • Palabras clave 4D
  • Palabras clave SQL
  • Macros (que aparecen entre < >)

Nota: por razones prácticas, puede desactivar la visualización automática de la lista de sugerencias para las constantes, variables locales e interprocesos y/o las tablas. Estas opciones se encuentran en la Página Métodos de las preferencias usuario.

La función Seleccionar bloque se utiliza para seleccionar el "bloque padre" del código que contiene el punto de inserción. El bloque padre puede definirse por:

  • las comillas,
  • los paréntesis,
  • una estructura lógica (If/Else/End if, While/End while, Repeat/Until Case of/End case), o
  • las llaves.

Si un bloque de texto está seleccionado, la función selecciona el nivel de bloque padre superior y así sucesivamente, hasta que se selecciona todo el método. 

Al presionar Ctrl+Mayús+B (Windows) o Comando+Mayús+B (Mac OS) usted permite reversar esta operación y desactivar el último bloque padre seleccionado.

Nota: si el punto de inserción se coloca en una estructura de tipo If o Else, el bloque padre será el que contiene, respectivamente, la instrucción If o Else.

Puede hacer doble clic para seleccionar "palabras" individuales. Cuando el nombre de un elemento de referencia (comando, constante, método, etc.) contiene espacios, puede seleccionar el nombre completo (incluidos los espacios) utilizando la combinación Alt/Opción + Doble clic.

Hay disponibles diferentes atajos de teclado para navegar el código en el editor de métodos de 4D.

Nota: bajo Mac OS, remplace la tecla Ctrl (Windows) por la tecla Comando.

AtajoAcción
[Mayús]+[flecha derecha]Crea y agranda la selección, carácter por carácter, hacia la derecha, o reduce la selección, carácter por carácter, desde la izquierda
[Mayús]+[flecha izquierda]Reduce la selección, carácter por carácter, desde la derecha o crea y agranda la selección, carácter por carácter, hacia la izquierda
[Mayús]+[flecha abajo]Crea y agranda una selección, línea por línea, de arriba hacia abajo
[Mayús]+[flecha arriba]Crea y agranda una selección, línea por línea, de abajo hacia arriba
[Ctrl]+[Shift]+[flecha derecha]Crea y agranda la selección, palabra por palabra, desde la derecha
[Ctrl]+[Shift]+[flecha izquierda]Reduce la selección, palabra por palabra, desde la derecha o crea y agranda la selección, palabra por palabra, desde la izquierda
[Ctrl]+[flecha derecha]Mueve el punto de inserción, palabra por palabra, de izquierda a derecha
[Ctrl]+[flecha izquierda]Mueve el punto de inserción de inserción, palabra por palabra de derecha a izquierda
[Inicio]Ubica el punto de inserción al comienzo de la línea
[Fin]Ubica el punto de inserción al final de la línea
[Ctrl]+[Inicio]Ubica el punto de inserción al principio del método
[Ctrl]+FinUbica el punto de inserción al final del método
[Mayús]+[Inicio]Selecciona todos los caracteres en la línea que están a la izquierda del cursor
[Mayús]+[Fin]Selecciona todos los caracteres en la línea que están ubicados a la derecha del cursor
[PgUp]Desplaza los contenidos del método, página por página, de abajo hacia arriba (no modifica el punto de inserción)
[PgDn]Desplaza los contenidos del método, página por página, de arriba a abajo (no modifica el punto de inserción)

4D verifica automáticamente la sintaxis del método para ver si es correcta. Si introduce un texto o selecciona un componente que no es correcto sintácticamente, 4D especifica el error en el área de sintaxis e indica la expresión incorrecta . Cuando pasa el ratón sobre el símbolo, un mensaje de ayuda muestra la causa del error:

Cuando introduce código, puede verificar inmediatamente la sintaxis de la línea actual (sin pasar a la línea siguiente) presionando la tecla Intro del teclado numérico. 4D verifica la línea, la formatea, indica los errores y ubica el cursor al final de la línea. Cuando una línea de un método se marca por no respetar la sintaxis, verifique y modifique la entrada. Si la línea es correcta, 4D borra el símbolo de error. La validación de un método entero se efectúa automáticamente cuando graba o cierra la ventana. También puede forzar la validación presionando la tecla Intro.

En el momento de la validación, 4D efectúa una verificación sintáxica a nivel de las líneas (sintaxis de los comandos) y/o de la estructura de las instrucciones (If, End if, etc.). 4D también verifica la correspondencia de los elementos de cierre del código tales como paréntesis o comillas. Cuando digita un carácter de cierre, 4D indica el correspondiente de estos elementos al enmarcar los caracteres de inicio/fin con rectángulos grises:

Nota: estos elementos se muestran cuando hace clic en el código. Puede modificar su apariencia u ocultarlos utilizando la opción "Correspondencia de los paréntesis" en la Página Métodos de las Preferencias de 4D

El editor de métodos sólo puede verificar los errores de sintaxis evidentes (errores de digitación o similares). No verifica los errores que ocurren durante la ejecución. Los errores de ejecución son interceptados por 4D cuando se ejecuta el método. 4D ofrece un depurador (ver Depurador) para manejar y corregir estos errores. El compilador representa igualmente una valiosa ayuda para detectar
errores. Para mayor información sobre el compilador, consulte el capítulo Compilación.

El editor de métodos ofrece diferente información contextual utilizando mensajes de ayuda, los cuales aparecen cuando ubica el ratón sobre un objeto.

  • Errores: cuando ubica el puntero del ratón sobre el símbolo que indica un error en el código, un mensaje de ayuda le muestra la causa del error (ver la sección "Verificar la sintaxis y corregir los errores").
  • Documentación de comando 4D: cuando pasa el cursor sobre un comando 4D, una mensaje de ayuda le ofrece la sintaxis del comando junto con una breve descripción sobre cómo funciona.
  • Tipos de variable: cuando ubica el cursor sobre una variable, un mensaje de ayuda muestra su tipo (si ha sido definido explícitamente en el método).
  • Métodos proyecto:  cuando ubica el cursor sobre un método proyecto, un mensaje de ayuda muestra:
    • el comentario especificado en el Explorador, si lo hay (ver Utilizar los comentarios).
    • o las primeras líneas del método si incluyen comentarios (líneas que comienzan por //). Es una práctica común insertar documentación del método así como también sus parámetros en forma de comentarios al inicio del método. Puede obtener esta información directamente, solo asegúrese de primero eliminar los comentarios en el Explorador.
      Comentarios al inicio de un método:

      Mensaje de ayuda en otro método:

En cualquier momento puede mostrar la documentación HTML de un comando del lenguaje 4D: para hacer esto, seleccione completamente el nombre del comando o inserte el cursor en el nombre y presione la tecla F1. La documentación completa del comando se muestra en una nueva ventana de su navegador por defecto.

4D busca la documentación del comando en línea (en el sitio de 4D Doc Center) o localmente dependiendo de los parámetros definidos en las Preferencias de la aplicación (ver Ubicación de la documentación).

Los comentarios son líneas de instrucciones inactivas. Estas líneas no son interpretadas por el programa (4D no aplica ningún estilo especifico dentro de los comentarios) y no se ejecutan cuando se llama el método.

Para crear un comentario, sólo necesita insertar los caracteres // al comienzo de la línea.

La longitud de los comentarios está limitada al tamaño máximo de una línea, 32 000 caracteres.

El comando Comentar/No comentar se utiliza para marcar un grupo de líneas de código seleccionadas como comentarios o por el contrario para suprimir el carácter comentario de una selección.
Para utilizar este comando, seleccione el código a marcar como comentario y luego seleccione el comando Comentar/No comentar:

-->

Cuando la selección contiene únicamente código activo, se aplica el comando Comentar. Cuando la selección incluye código activo y líneas de comentario, se añade un par de caracteres de comentario ( // ); de esta forma, conservaran su estatus inicial de comentario si la línea es “ no comentada” posteriormente. Cuando la selección contiene sólo líneas comentadas, se aplica el comando No comentar.

Nota: el comando Comentar/No comentar sólo funciona con líneas enteras, no puede utilizarse para comentar una parte de una línea.

El editor de métodos le permite utilizar secuencias de escape (también llamadas caracteres escape). Una secuencia de escape es una secuencia de caracteres que permite reemplazar un carácter “especial”.

La secuencia comienza por el carácter barra oblicua \, seguido de un carácter. Por ejemplo, \t es una secuencia de escape para el carácter Tab. Las secuencias de escape facilitan la entrada de caracteres especiales: el ejemplo anterior (\t) reemplaza la entrada Character(Tab).

En 4D, pueden utilizarse las siguientes secuencias de escape:

Secuencia de escapeCarácter reemplazado
\nLF (Retorno línea)
\tHT (Tab)
\rCR ((Retorno de carro)
\\\ (Barra oblicua inversa)
\"" (Comillas)

Nota: es posible utilizar indiferentemente caracteres en mayúsculas o minúsculas en las secuencias de escape.

En el siguiente ejemplo, el carácter Retorno de carro (secuencia de escape \r) se inserta en una línea de instrucción para obtener la caja de diálogo que se muestra a continuación:

 ALERT("La operación fue exitosa.\rPuede desconectarse.")

Atención: el carácter \ (barra oblicua inversa) se utiliza como separador de las rutas de acceso bajo Windows. En general, 4D interpretará correctamente los caminos de acceso Windows remplazando la barra oblicua simple \ por una barra oblicua doble \\. Por ejemplo, C:\Carpeta se convertirá en C:\\Carpeta.
Sin embargo, si escribe “C:\MisDocumentos\Nuevo”, 4D mostrará “C:\\MisDocumentos\Nuevo”. En este caso, la segunda barra oblicua \ se interpreta incorrectamente como \N (secuencia de escape existente). Por lo tanto debe introducir una barra oblicua doble \\ cuando quiera tener una barra oblicua frente a un carácter utilizado en una de las secuencias de escape reconocidas por 4D.

Varias funciones en el editor de métodos facilitan la lectura del código y la navegación entre las líneas de instrucción.

El código 4D que se encuentra dentro de los bucles y de las condiciones ahora se puede contraer o expandir, para facilitar la lectura de los métodos:

  • Código desplegado:
  • Código contraído:

Si coloca el ratón sobre el botón de desplegar [...], aparece un mensaje de ayuda, que muestra las primeras líneas del código oculto.

Una parte de código contraída se puede seleccionar, copiar, pegar o borrar. Todas las líneas incluidas se copiarán, pegarán o borrarán respectivamente. Cuando una parte del código se pega, se expande automáticamente.

Hay varias maneras de desplegar y contraer el código:

  • Haga clic en los iconos expandir/contraer ([+] y [-] en Windows) o en el botón de apertura [...]
  • Utilice los comandos del submenú Método>Contraer/Expandir:
    • Contraer la selección / Expandir la selección: contrae o despliega todas las estructuras de código en la selección de texto.
    • Contraer el nivel actual / Expandir el nivel actual: contrae o despliega la estructura del código en el nivel donde se encuentre el cursor. Estos comandos también están disponibles en el menú contextual del editor.
    • Contraer todo / Expandir todo: contrae o expande todos los bucles y las condiciones de un método. Estos comandos también están disponibles en la barra de herramientas del editor: .

Dos comandos facilitan la navegación dentro de las estructuras de código (por ejemplo, If...Else... End if):

  • Inicio de bloque: coloca el cursor al inicio de la estructura actual, justo antes de la palabra clave inicial.
  • Fin de bloque: coloca el cursor al final de la estructura actual, justo después de la palabra clave final.

Estos comandos se encuentran en el menú Método, así como también el menú contextual del editor. También puede utilizar los siguientes atajos:

  • Windows: Ctrl + flecha arriba o Ctrl + Flecha abajo,
  • Mac OS: Comando + flecha arriba o Comando + flecha abajo.

4D permite asociar marcas con líneas determinadas en sus métodos. Así puede navegar rápidamente en el código pasando de una marca a otra usando los comandos específicos.

Una marca se mueve junto con su línea original si se insertan líneas adicionales en el método. Las marcas se guardan con los métodos.

Las marcas se manejan utilizando el submenú Marcas del menú Método:

  • Marcar: asocia una marca con la línea actual (donde se encuentra el cursor) si no tiene una marca o elimina la marca existente. Esta función también está disponible utilizando el comando Marcar/Desmarcar del menú contextual del editor o usando los atajos de teclado Ctrl+F3 (Windows) o Comando+F3 (Mac OS).
  • Quitar todas: elimina todas las marcas de la ventana del primer plano. 
  • Ir a siguiente / Ir al anterior: permite navegar entre las marcas en la ventana. La selección de uno de estos comandos coloca el cursor en el primer carácter de la línea asociada a la marca. También puede utilizar los atajos de teclado F3 (ir a la siguiente) o Mayús+F3 (ir al anterior).

Nota: puede utilizar marcas como marcadores de las líneas que contienen un elemento encontrado por una búsqueda. En este caso, 4D añade automáticamente los marcadores. Para obtener más información, consulte la sección Buscar y reemplazar en métodos.



Ver también 

Crear y utilizar macros

 
PROPIEDADES 

Producto: 4D
Tema: Editar métodos

 
HISTORIA 

 
PALABRAS CLAVES 

IME

 
ARTICLE USAGE

Manual de Diseño ( 4D v16)
Manual de Diseño ( 4D v16.1)
Manual de Diseño ( 4D v16.3)