Herramientas de desarrollo
- Script de 1C:Enterprise
- Designer: un banco de trabajo para el desarrollo de aplicaciones
- Actualización de soluciones aplicadas
- Sistema de derechos de usuario
- Herramientas de integración
- Lenguaje de consulta
Script de 1C:Enterprise
El script de 1C:Enterprise es fundamental para la plataforma de software. Tiene mucho en común con Pascal, JavaScript y Basic, pero no está directamente relacionado con ninguno de estos lenguajes. Como se mencionó anteriormente, las soluciones aplicadas no se programan (codifican) completamente en 1C:Enterprise. La mayoría de ellas se describen de forma paramétrica, como estructuras de metadatos, con la ayuda de Designer a través de formularios, informes, etc.
Por lo tanto, 1C:Enterprise proporciona un script para programar la lógica empresarial dentro del contexto del modelo de objetos de 1C:Enterprise. El script se utiliza para programar los controladores de varios eventos que cambian el estado de los objetos del sistema, es decir, controladores de comandos de usuario, controladores de publicación de documentos, etc.
Es importante tener en cuenta que las características estructurales del script corresponden directamente al modelo de diseño de estructura de datos implementado en 1C:Enterprise. Dado que el desarrollo de la configuración completa se basa en objetos de sistema estándar, el desarrollador de soluciones aplicadas puede utilizar objetos de script que corresponden a estos objetos de sistema y son muy funcionales y flexibles.
Entre las características tecnológicas más importantes del script se encuentran las siguientes:
- precompilación. Los módulos se convierten en código nativo antes de la ejecución;
- almacenamiento en caché de los módulos compilados en la memoria;
- tipificación flexible: se puede cambiar el tipo de variables durante el trabajo;
- no hay descripción programática de objetos de configuración: la solución aplicada puede manipular objetos integrados en la plataforma 1C:Enterprise, así como objetos descritos por el desarrollador en el proceso de construcción visual del sistema como objetos de metadatos.
Designer: un banco de trabajo para el desarrollo de aplicaciones
1C:Enterprise incluye Designer, un banco de trabajo potente para el desarrollo y modificación rápida de soluciones aplicadas. Designer se incluye con casi todos los productos de 1C:Enterprise, y los usuarios de estos productos tienen acceso al mismo conjunto de herramientas que el personal de 1C.
Las herramientas de desarrollo de soluciones aplicadas admitidas por Designer incluyen las siguientes:
- Árbol de configuración, paleta de propiedades y editores de objetos de configuración: herramientas para describir objetos de metadatos visualmente, es decir, entidades que forman la estructura de la solución aplicada.
- Asistente de sintaxis.
- Los asistentes que automatizan la creación de ciertos elementos de la solución aplicada, incluyendo los siguientes:
- Asistente de consulta.
- Asistente de formulario de salida.
- Asistente de registros de registro.
- Asistentes de impresión.
- Asistente de entrada en base.
- Asistentes de formulario (para varios objetos de configuración).
- Asistente de menú.
- Asistente de cadena de formato.
- Asistente de plantilla.
- Asistente de apariencia de composición de datos.
- Varios editores, incluyendo los siguientes:
- Editor de formularios.
- Editor de texto (también utilizado como editor de módulos).
- Editor de documentos de hoja de cálculo.
- Editor de HTML.
- Editor de interfaz de usuario.
- Editor de imágenes.
- Editor de formularios de pantalla.
- Mecanismo de búsqueda y reemplazo global.
- Mecanismo de plantillas de texto.
- Mecanismo de comparación y fusión de configuraciones.
- Mecanismo de guardado/carga de configuraciones.
- Mecanismo de desarrollo de grupo.
- Mecanismo de suministro y soporte.
- Mecanismo de desarrollo de paquetes de instalación.
- Depurador.
- Mecanismo de verificación de configuración.
- Mecanismo de volcado/restauración de configuración.
- Medidor de rendimiento.
- Mecanismo de edición de texto de interfaz.
- Una serie de otras herramientas.
Las herramientas de desarrollo y modificación de configuraciones no son solo para programadores profesionales y pueden ser utilizadas por cualquier persona. La facilidad de aprendizaje y la facilidad de uso fueron los factores clave tenidos en cuenta durante su desarrollo. La experiencia ha demostrado que un usuario experimentado puede modificar fácil y eficazmente ciertas partes de la solución contable aplicada.
Actualización de soluciones aplicadas
La disponibilidad de tecnologías para el soporte industrial sin tiempo de inactividad y para la actualización de las soluciones instaladas es de suma importancia para los desarrolladores y usuarios de sistemas de automatización contable y de gestión. Se presta mucha atención a este nivel de servicio dentro de 1C:Enterprise.
Actualización automática
Si el usuario no ha modificado la solución aplicada, 1C:Enterprise instalará las actualizaciones proporcionadas por el desarrollador (nuevas versiones, ediciones, versiones) en modo completamente automatizado.
Sincronización de cambios
Si el usuario ha modificado la solución aplicada, estos cambios se sincronizarán con la actualización proporcionada por el proveedor de la solución estándar inicial, pero los cambios introducidos por el usuario se conservarán.
Configuración de opciones de soporte
Esta es una característica útil implementada en 1C:Enterprise 8 para los proveedores de soluciones estándar para controlar cómo los usuarios cambian ciertos objetos de configuración. El proveedor puede definir objetos críticos en términos de soporte centralizado posterior, por ejemplo, si dicha modificación entraría en conflicto con los métodos contables admitidos por el proveedor. 1C:Enterprise 8 permite la modificación de dichos objetos por parte del usuario solo después de que el usuario realice la operación de “cancelar soporte” en los objetos.
Soporte multinivel para soluciones aplicadas
En la práctica, el usuario puede utilizar cualquiera de las varias aplicaciones de 1C:Enterprise suministradas y admitidas por diferentes proveedores, tanto de forma independiente como simultáneamente. Por ejemplo, los desarrolladores de aplicaciones especializadas de la industria generalmente las basan en soluciones estándar de 1C. Se proporciona una opción de soporte multinivel para estos escenarios.
Comparación y fusión de soluciones aplicadas
La función “comparar y fusionar configuraciones” es compatible en el modo de actualización de la solución aplicada. Cuando se actualiza la solución aplicada, se muestran tanto los cambios introducidos por el usuario en relación con la configuración suministrada como los cambios introducidos por el proveedor en la nueva versión (en comparación con la anterior).
La función “comparar y fusionar configuraciones” es de vital importancia en el proceso de desarrollo de soluciones aplicadas. Se puede utilizar para incorporar fácil y correctamente elementos de otras configuraciones en la aplicación en desarrollo, para sincronizar las soluciones en desarrollo, etc. Entre las opciones admitidas por esta función se encuentran las siguientes:
- Comparación de elemento por elemento de metadatos de ambas configuraciones. La comparación se puede realizar hasta el nivel de propiedades y elementos individuales (procedimientos y controles).
- Generación de informes de comparación.
- Comparación visual de módulos y formularios.
- Configuración de modos de fusión: el desarrollador puede especificar la prioridad con la que se incluirán los objetos en la configuración unificada.
Sistema de derechos de usuario
El editor de derechos de usuario de 1C:Enterprise se puede utilizar para realizar personalización visual (sin programación) de los derechos de acceso en la configuración, definir conjuntos de roles y definir derechos de usuario en las dimensiones de Entidad/Rol/Acción. Por lo tanto, el desarrollador puede “construir” los roles (gerente, contador, vendedor) y especificar los derechos de acceso a ciertas entidades para cada rol (por ejemplo, un gerente puede editar el catálogo de inventario, mientras que un vendedor solo puede ver el catálogo, etc.). Sin embargo, se pueden seleccionar múltiples roles simultáneos para cada usuario en el sistema.
Otro aspecto importante de 1C:Enterprise es el soporte tanto de derechos de acceso de bajo nivel como interactivos. A través de la función de configuración de derechos interactivos, el desarrollador puede limitar el acceso interactivo del usuario a ciertos objetos del sistema, pero permitir el acceso programático a estos objetos en caso de que las acciones permitidas por el usuario inicien el procesador de datos correspondiente. Con esta función, el desarrollador no tiene que programar interfaces tediosamente (desactivando ciertos elementos de menú, botones, etc.). Los derechos de bajo nivel bloquean completamente el acceso del usuario a ciertos objetos o funciones, independientemente de los algoritmos llamados.
1C:Enterprise admite la verificación de roles/derechos basada en software (desde el script). A través de esto, el desarrollador puede mejorar el sistema de diferenciación de derechos de acuerdo con los requisitos de una determinada solución aplicada mediante la creación (programación) de verificaciones que no son proporcionadas automáticamente por el sistema.
Herramientas de integración
1C:Enterprise admite una amplia integración con diferentes sistemas. Las siguientes tecnologías de integración están disponibles:
- procesamiento de documentos XML,
- interacción a través de una conexión COM,
- interacción a través de la función de automatización (cliente y servidor),
- uso de los protocolos HTTP, HTTPS y FTP,
- trabajo con correo electrónico,
- intercambio a través de archivos de texto, incluida la lectura secuencial de archivos de texto grandes,
- intercambio de datos a través de archivos DBF.
1C:Enterprise 8 también utiliza la función basada en COM para ampliar la funcionalidad del script mediante el desarrollo de componentes externos utilizando Visual C++, MS Visual Basic y Borland Delphi.
Estas herramientas son utilizadas con éxito por los desarrolladores de 1C y terceros para crear una amplia gama de aplicaciones compatibles con 1C:Enterprise y desarrollar componentes externos que realizan diversas funciones, como la conexión a varios dispositivos, el uso de tecnologías de Internet, etc.
Entre los ejemplos se encuentran los siguientes:
- Generador de esquemas XML para la configuración rápida del intercambio de datos entre soluciones aplicadas de 1C:Enterprise (configuraciones) o entre las aplicaciones y otros sistemas de información.
- CommerceML, un estándar ruso para el intercambio de información empresarial en formato XML desarrollado por Microsoft, Intel, 1C y varias otras compañías rusas de Internet.
- Un estándar para el intercambio de datos entre el software de contabilidad 1C:Enterprise y los sistemas bancarios en línea.
- Una amplia gama de soluciones para integrar 1C:Enterprise con varios equipos de venta al por menor (cajeros automáticos, terminales de punto de venta, básculas electrónicas, etc.). Este es uno de los mejores ejemplos de cómo se utiliza la tecnología de componentes externos para desarrollar herramientas de integración de 1C:Enterprise con varios sistemas y dispositivos.
- Soluciones que admiten el intercambio de datos entre el software de contabilidad 1C:Enterprise y los sistemas de información del Ministerio de Impuestos de la Federación Rusa y otras autoridades públicas.
Lenguaje de consulta
Las consultas en 1C:Enterprise 8 se utilizan para obtener información de las bases de datos. De hecho, una consulta es una solicitud al sistema para seleccionar cierta información de una base de datos. A menudo se solicitan algunas operaciones adicionales con los datos: a veces es necesario agrupar, filtrar o calcular los datos. Por ejemplo, se pueden utilizar consultas para seleccionar a todos los empleados en un puesto de trabajo específico o para conocer el volumen de ventas por artículo durante un año determinado, detallado hasta el mes.
El lenguaje de consulta de 1C:Enterprise es un lenguaje basado en SQL con una gran cantidad de extensiones que reflejan las especificidades de las tareas financieras y económicas y simplifican en gran medida el desarrollo de aplicaciones empresariales.
Entre las opciones más útiles se encuentran las siguientes:
- Desreferenciación de campos de referencia, es decir, llamar a campos a través de un punto (“.”). Si los campos de una tabla tienen un tipo de referencia y almacenan referencias a los objetos de otra tabla, el desarrollador puede referenciarlos a través de un punto en su consulta. Es importante tener en cuenta que el sistema no limita el número de niveles anidados de tales referencias.
- Llamada a tablas anidadas (secciones tabulares de documentos y elementos de referencia). El sistema admite la llamada a secciones tabulares anidadas como si fueran tablas separadas o campos completos de una sola tabla. Por ejemplo, si llamamos a una factura (un documento que contiene una sección tabular con la descripción del inventario enviado), podemos trabajar con una sección tabular como una tabla separada (y obtener registros de diferentes objetos), o considerar la entrada de encabezado como una factura en sí misma donde los valores de los campos son todas las entradas de una tabla anidada que son subordinadas a este objeto.
- Ordenamiento automático. Para especificar el orden óptimo de los datos en la pantalla o en el informe, en la mayoría de los casos el desarrollador simplemente puede establecer el orden automático.
- Formación de totales multidimensionales y multinivel. Los totales y subtotales se forman teniendo en cuenta los grupos y jerarquías. Los niveles se pueden iterar arbitrariamente con un cálculo de subtotales y un cálculo correcto de totales por dimensiones de tiempo.
- Soporte de tablas virtuales. Las tablas virtuales proporcionadas por el sistema se pueden utilizar para obtener datos completos para la mayoría de las tareas empresariales sin necesidad de crear consultas complejas. Por ejemplo, una tabla virtual puede presentar datos sobre los saldos de inventario para diferentes períodos en un momento determinado. Al mismo tiempo, las tablas virtuales utilizan la información almacenada tanto como sea posible, es decir, totales calculados previamente, etc.
- Por supuesto, se admiten operaciones SQL estándar, como Union, Join, etc. en el lenguaje de consulta de 1C:Enterprise.


