Abrir el formulario en procesamiento externo 1s

En este artículo, consideraremos instrucciones paso a paso para crear procesamiento externo en 1C 8.3 en modo de aplicación administrada, respectivamente, usaremos formularios administrados. Y lo más importante, aprenderemos cómo conectarlo al mecanismo de "procesamiento externo" de configuraciones 1C construido en una biblioteca de subsistemas estándar versión 2.0 y posteriores.

La tarea será la siguiente: crear el procesamiento externo más simple que realizará una acción grupal en el directorio "Artículo", es decir, establecer el porcentaje de tasa de IVA seleccionado para el grupo de artículos especificado.

Para hacer esto, realizaremos inmediatamente las configuraciones necesarias en el programa (estamos considerando la configuración 1C 8.3: "Enterprise Accounting 3.0" en formularios administrados).

Marcar esta casilla nos da la oportunidad de utilizar procesamiento externo.

Creando un nuevo procesamiento externo en 1C 8.3 usando un ejemplo

Ahora vayamos al configurador. En el menú "Archivo", seleccione "Nuevo...". Se abrirá una ventana para seleccionar el tipo de archivo a crear. Seleccione “Procesamiento externo”:

Se abrirá una nueva ventana de procesamiento externo. Démosle un nombre de inmediato. Se ofrecerá al guardar el procesamiento en disco:

Agreguemos un nuevo formulario de procesamiento controlado. Indicamos que esta es una forma de tramitación y es la principal:

Tendremos dos detalles en el formulario:

  • Grupo de nomenclatura: enlace al directorio “Nomenclatura”;
  • SelectVATRate – enlace a la transferencia de la Tasa de IVA.

Creamos los detalles en la columna “Propiedades” de la ventana superior derecha. Arrástrelos con el mouse a la ventana superior izquierda. Los nuevos detalles deberían aparecer inmediatamente en el siguiente formulario.

El orden de los detalles se puede cambiar usando las flechas “Arriba” – “Abajo”:

Obtenga 267 lecciones en video sobre 1C gratis:

Ya sólo queda agregar el botón “Instalar”. En los formularios administrados, no puede simplemente agregar un botón al formulario. Incluso si lo agrega a la estructura de los elementos del formulario, no será visible en el formulario mismo. El botón debe estar asociado al comando que ejecutará. Vaya a la pestaña "Comandos" y agregue el comando "Establecer tasa de IVA". En las propiedades del comando, cree una acción. Seleccione el controlador de comandos "En el cliente". También se puede agregar un comando al formulario simplemente arrastrándolo a la sección con elementos del formulario.

Se creará un procedimiento con el mismo nombre en el módulo de formulario. En él llamaremos al procedimiento en el servidor:

&EnCliente

Procedimiento Establecer tasa de IVA (comando)

EstablecerVATRateOnServer();

Fin del Procedimiento

En el procedimiento en el servidor escribiremos una pequeña solicitud y acciones relacionadas con la fijación del tipo de IVA:

&En el servidor

Procedimiento SetVATRateOnServer()

Solicitud = Nueva Solicitud;
Solicitud.Texto =
"ELEGIR
| Nomenclatura.Enlace
|DESDE
| Directorio.Nomenclatura AS Nomenclatura
|DONDE
| Nomenclatura.Enlace EN JERARQUÍA (&Grupo de Nomenclatura)
| Y NO Nomenclatura.MarkDeletion
| Y NO Nomenclatura, esto es un Grupo”;

Request.SetParameter("Grupo de artículos", Grupo de artículos);
ResRequest = Solicitud.Execute();
SelectRecordDet = ResRequest.Select();

Mientras que el bucle SelectRecordDet.Next()

Intentar
SprNomObject.Write();
Excepción
Report("Error al escribir objeto """ + SprNomObject + """!
|» + DescripciónError());
intento final;

Fin del ciclo;

Fin del Procedimiento

Volvemos a la pestaña “Formulario”, agregamos un botón al formulario y lo asociamos con el comando:

Como tal, nuestro procesamiento está listo para su uso. Para llamarlo, en el modo "1C Enterprise", debe ir al menú "Archivo" - "Abrir" y seleccionar el archivo creado.

Sin embargo, trabajar en este modo es conveniente para el procesamiento de depuración, pero no es del todo adecuado para el usuario. Los usuarios están acostumbrados a tenerlo todo “al alcance de la mano”, es decir, en la propia base de datos.

Para esto está la sección “Informes y procesamientos adicionales”.

Pero para poder agregar nuestro procesamiento allí, primero debemos darle una descripción y decirle al programa sus propiedades.

Descripción de la función “Información sobre Tratamiento Externo”

Daré un ejemplo del contenido de esta función. Debe ser exportable y, en consecuencia, estar ubicado en el módulo de procesamiento:

Función InformationOnExternalProcessing() Exportar

DataForReg = Nueva Estructura();
DataForReg.Insert("Nombre", "Configuración del tipo de IVA");
DataForReg.Insert("Modo Seguro", Verdadero);
DataForReg.Insert("Versión", "ver.: 1.001");
DataForReg.Insert("Información", "Trámite de fijación de tasa de IVA en el directorio de Nomenclatura");
DataForReg.Insert("Ver", "Procesamiento adicional");

TablaComando = NewValueTable;
TabZnCommands.Columns.Add("Identificador");
TabZnCommands.Columns.Add("Uso");
TabZnCommands.Columns.Add("Ver");

NuevaFila = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm";
NewRow.View = "Abrir procesamiento";
DataForReg.Insert("Comandos", TabZnCommands);

Devolver datos para registro;

Función final

Para comprender mejor qué campos de la estructura de datos de registro deben usarse, veamos los detalles del directorio "Informes y procesamiento adicionales":

Como puedes ver, todo es bastante sencillo. Sólo un atributo no coincide: “Opción de inicio” – “Usar”. Si miramos el código de uno de los módulos comunes, veremos cómo surgen un montón de estos campos:

Para determinar qué campos de una estructura son necesarios, primero no puede describirlos, simplemente cree uno vacío y luego use el depurador. Si rastrea los módulos al registrar el procesamiento, inmediatamente queda claro qué campos son obligatorios y cuáles no.

Conexión de procesamiento externo en 1C 8.3

Para trabajar con procesamiento externo (y un formulario de impresión externo también es un procesamiento externo), hay un objeto Procesamiento externo.

Consideremos dos casos posibles:

El procesamiento externo se almacena en el disco por separado de la base de datos.

Para abrir mediante programación el procesamiento externo en 1C, necesita conocer la dirección de su archivo. Sabiéndolo, puede abrir un formulario de procesamiento u obtener un objeto de procesamiento para realizar acciones adicionales con él (por ejemplo, llamar a funciones de exportación desde un módulo de objeto).

Abrir un formulario de procesamiento externo

Para abrir mediante programación un formulario de procesamiento externo en 1C, use la función Obtener formulario() objeto Procesamiento externo. La función tiene varios parámetros. Considere una simple apertura del formulario de procesamiento principal:


Formulario = Procesos Externos. Obtener formulario (dirección de archivo);
Forma. Abierto();

Para abrir un formulario de procesamiento externo menor, debe especificar su nombre.

//La variable FileAddress contiene la ruta completa al archivo de procesamiento externo
Formulario = Procesos Externos. Obtener formulario (dirección de archivo, "Forma menor") ;
Forma. Abierto();

Abrir procesamiento externo como objeto

Para recibir procesamiento externo como un objeto, se utiliza una función. Crear() objeto Procesamiento externo.

//La variable FileAddress contiene la ruta completa al archivo de procesamiento externo
ProcessingObject = Proceso externo. Crear (dirección de archivo);

De forma predeterminada, todo el procesamiento se abre en modo seguro. Para desactivarlo, utilice las siguientes opciones:

//La variable FileAddress contiene la ruta completa al archivo de procesamiento externo

Procesamiento externo o formulario de impresión guardado en la base de datos.

En muchas configuraciones, es posible guardar formularios impresos externos y procesarlos directamente en la base de datos. Para ello se utiliza el libro de referencia. Procesamiento externo. El procesamiento externo en sí se almacena como datos binarios o en atributos. AlmacenamientoProcesamientoExterno, o en la sección tabular Afiliación en los accesorios AlmacenamientoProcesamientoExterno.

Para abrir el procesamiento externo necesita:

  1. Consíguelo del almacenamiento.
  2. Guarde el archivo procesado en el disco.
  3. Abra un formulario u obtenga un objeto de procesamiento.
  4. Si se trata de un formulario impreso externo, entonces podemos completar los detalles estándar. Referencia de objeto y llamar a la función de exportación Sello.

//La variable RefLink contiene un enlace al elemento del directorio ExternalProcessings
DvData = EnlaceRef. Almacenamiento de procesamiento externo. Conseguir() ;
DirecciónDeArchivo = GetTemporaryFileName();
DvData. Escribir (Dirección de archivo);
ProcessingObject = Proceso externo. Crear (Dirección de archivo, Falso);

Artículos similares

  • Historia del barco Dibujos del barco San Giovanni Batista.

    Entonces, los primeros resultados de mi epopeya marina. Ya os hablé de que quería hacer una maqueta de un velero y de mis dudas sobre el set “Grandes Veleros”. Decidí hacer yo mismo el velero si era posible. Parece,...

  • Lo que en Rusia se llamaba navegar

    El primer "barco" hecho de varillas flexibles, recubiertas con corteza y luego con cuero, estaba destinado a viajes pequeños y, según los científicos, era familiar para los eslavos orientales desde la antigüedad. La cesta de mimbre está siendo sustituida rápidamente por una más cómoda para nadar...

  • Historia de los planos de montaje del barco San Giovanni Batista.

    Después de un descanso debido a las vacaciones de verano (vivíamos en la casa de campo todo el tiempo y no me llevé el barco porque ya hay bastantes preocupaciones en el verano), mi hijo y yo reanudamos la construcción del galeón. El punto de trabajo fueron las ventanas en las superestructuras de popa,...

  • “Lord of the Seas” (Soberano de los Mares) apodado “Muerte Dorada” Maqueta prefabricada del velero Lord of the Seas

    "El Señor de los Mares" es una serie única sobre el legendario barco fuertemente armado de Su Majestad. ¿Quiere sumergirse en el mundo de la arquitectura naval, familiarizarse con su historia, estudiar los aspectos tecnológicos de la construcción naval y recrear el

  • ¿Qué tipo de bergantín es?

    Habiendo decidido diluir la conversación sobre las complejidades del negocio del modelaje con los "billetistas", abro una serie periódica de historias sobre barcos que son especialmente populares entre los modelistas de barcos. Como regla general, sólo unos pocos de los que construyen el modelo HMS...

  • Práctica de mar para principiantes.

    Un breve diccionario de términos y expresiones marítimas Backstay - en los veleros de los que se conserva este nombre - todo el espacio de la cubierta superior desde la popa hasta el trinquete Backstay - el rumbo de un velero en el que se encuentra su plano central. .