This is an automatic translation. The original post is available in Inglés.

CodeunitACF Management

Usando la codeunit ACF Management usted tiene la habilidad de invocar las principales funciones de control de Anveo Client Suite y utilizarlas en su código.

Los servicios web utilizados para la comunicación con Microsoft Dynamics NAV 2017 no permiten la interacción con el usuario en el Anveo Web Portal por razones técnicas. Como resultado, las funciones de Microsoft Dynamics NAV 2017 MESSAGE, CONFIRM, STRMENU y DIALOG no se identifican automáticamente ni se muestran en el cliente. Por otro lado, estas restricciones predefinidas estipuladas por los servicios web pueden ser evitadas con poco esfuerzo transfiriendo estas invocaciones a la codeunit ACF Management. La codeunit hace la diferenciación del caso entre Microsoft Dynamics NAV 2017 Client y Anveo Client Suite automáticamente y procesa el caso en consecuencia.

Los mensajes de error causados por ERROR no tienen que ser adaptados, el servicio web puede manejarlos.

MESSAGE …MESSAGE10

La función MESSAGE equivale a la misma función en el Microsoft Dynamics NAV 2017 Puede utilizar mensajes en los que sustituya el código:

MESSAGE('Hello World!');
MESSAGE('Hello %1!', anyVariable);

con este código:

ACFManagement.MESSAGE('Hello World!');
ACFManagement.MESSAGE1('Hello %1!', anyVariable);

La función MENSAJE1 significa que contiene un parámetro que está incrustado en el texto del cuadro de mensaje. Activando las funciones MESSAGE …MESSAGE10 se pueden especificar hasta 10 parámetros.

CONFIRM ... CONFIRM10

En caso de que necesite interactuar con el usuario a través de un mensaje CONFIRM, puede sustituir el código:

IF CONFIRM('Are you sure?') THEN doSomething();
IF CONFIRM('Do you want to delete %1?',anyVariable) THEN
doSomething();

con este código:

IF ACFManagement.CONFIRM('Are you sure?',TRUE) THEN
doSomething();
IF ACFManagement.CONFIRM1('Do you want to delete %1?',FALSE,
anyVariable) THEN
doSomething();

De forma análoga a los mensajes, activando CONFIRM ... CONFIRM10 se pueden especificar hasta 10 parámetros. Tenga en cuenta que debe especificar el parámetro Default, ese parámetro puede omitirse en la CONFIRM de Microsoft Dynamics NAV 2017.

Al igual que con la versión por defecto de Microsoft Dynamics NAV 2017, en una CONFIRM se debe tener en cuenta que ninguna tabla ha sido bloqueada de antemano con INSERT, MODIFY, DELETE o LOCKTABLE, ya que la tabla no se libera hasta que el usuario vuelva a registrarse. Esto, a su vez, significa que un bloqueo muy largo va a restringir el trabajo de otros usuarios de la aplicación. Si tal caso es inevitablemente necesario y, por lo tanto, se ha producido de forma deliberada o accidental, una sesión de usuario en la Configuración de usuario web permite restablecerla para que se cancele el procesamiento.

STRMENU

En el caso de que un “Yes” o “No” no sea suficiente como interacción con un mensaje CONFIRM, puede reemplazar el código:

Selection := Dialog.STRMENU('Yes,No,Cancel',2,'Save?');

con este código:

Selection := ACFManagement.STRMENU('Yes,No,Cancel',2,'Save?');
DIALOGOPEN, DIALOGUPDATE, DIALOGCLOSE

Las funciones de la codeunit ACF Management son análogas a las mismas funciones del Microsoft Dynamics NAV 2017 y se utilizan para tener el estado de procesos largos (p. ej. contabilizaciones). Un ejemplo para usar diálogos se encuentra en la codeunit ACF Events Admin/Examples, función
OnAction_EXAMPLE(), código de acción EXAMPLE:PROGRESSW.

HYPERLINK

Equivalente a la función HYPERLINK de Microsoft Dynamics NAV 2017.

OpenURL

Abre una Anveo Page con el contenido de la URL especificada.

OpenURLExtended

Abre una Anveo Page con el contenido de la URL especificada que permite una URL mucho más larga que la función OpenURLExtended (más información aquí).

OpenGoogleMaps

Abre una página web que muestra un mapa de Google-maps en la dirección especificada. Para un ejemplo, véase el código de acción CONTACT:OPENGM en la
codeunitACF Events Sales & Marketing

OpenWebPage

Abre una Anveo Page especificada en el cliente web.

OpenWebPageNewRec

Abre una Anveo Page especificada en el cliente web para insertar un nuevo registro. Una vez abierta la Anveo Page, se crea el registro.

CloseWebPage

Cierra la Anveo Page actual en el cliente web.

WebPageNewRec

Crea un nuevo registro en la Anveo Page actual. Esta función es igual a la acción NEW_RECORD() de codeunit ACF Events (ver más información aquí).

ReloadWebPage

Recarga la Anveo Page actual en el cliente web.

ReloadWebPagesTableNo

Recarga todas las Anveo Pages abiertas que se refieren a la tabla con el número indicado. El segundo parámetro de esta función fija el alcance: 0 = all card, 1 = all lists, 2 = all cards and lists.

DownloadDialogWin

Abre un cuadro de diálogo para la descarga de archivos o para la visualización directa de documentos PDF, siempre que se haya instalado un complemento de navegador adecuado.

OpenFileDownloadDialogWinSave

Abre un cuadro de diálogo para la descarga de archivos, independientemente de si se puede mostrar directamente en el plugin del navegador o no.

OpenFileUploadDialogWin

Abre un cuadro de diálogo para cargar archivos. El primer parámetro de la función devuelve el nombre del archivo (sin ruta), donde se almacenó el archivo cargado. El archivo se encuentra después de cargarlo en el directorio de transferencia de Anveo Client Suite tal y como está configurado en el campo Anveo Setup en el campo Web Service File Transfer Folder.

GetSessionID

Devuelve el ID de sesión actual del usuario de Anveo.

GetACFUserOrUSERID

Devuelve el código de Anveo User o la variable global USERID de Microsoft Dynamics NAV 2017, dependiendo del código C/AL, llamada por Anveo Client Suite o por Microsoft Dynamics NAV 2017.

GetACFUser

Devuelve el código de Anveo User, siempre que se invoque dentro de Anveo Client Suite. De lo contrario, se devuelve un valor en blanco.

IsACF

Devuelve si el código C/AL está siendo invocado desde el marco de trabajo de Anveo Client para que se puedan ejecutar diferentes tipos de comportamiento. Comparable a ISSERVICETIER o GUIALLOWED en Microsoft Dynamics NAV 2017.

IsApp

Devuelve si el código C/AL está siendo invocado desde la Anveo Mobile App para que se puedan ejecutar diferentes tipos de comportamiento. Comparable a ISSERVICETIER o GUIALLOWED en Microsoft Dynamics NAV 2017.

Log

Escribe una entrada de log para una función determinada junto con un texto adjunto. Puede depurar su código C/AL utilizando el protocolo activado de todas las entradas de usuario.

SetxRec

Como xRec no está disponible en todas partes (ver aquí), puede configurarlo usando la función SetxRec. La configuración de xRec ya tiene lugar en codeunit ACF Events.

GetxRec

Como xRec no está disponible en todas partes (ver aquí), puede obtenerlo utilizando la función GetxRec. La obtención de xRec ya tiene lugar en codeunit ACF Events.

GetTempFileName

Crea un archivo temporal en el servidor donde se ejecuta el servicio web de Microsoft Dynamics NAV 2017 y devuelve su nombre.

Al abrir Anveo Pages, la tabla fuente y el código de relación se entregan como parámetro en lugar de la tabla de destino (como es el caso en Microsoft Dynamics NAV 2017 Standard). Dado que la tabla de destinos se encuentra en la relación especificada y todos los filtros (incluido el filtro de seguridad) están establecidos allí, las Anveo Pages deben abrirse de esta manera por razones de seguridad.