Utilidades procedimientos Z%

Creado por David Miralpeix, Modificado el Fri, 16 Feb 2024 a las 12:26 PM por David Miralpeix

A continuación, detallamos la utilidad de algunos de los procedimientos almacenados internos.


IMPORTANTE: NO DEBE EJECUTARSE NINGUNO SALVO RECOMENDACIÓN EXPLÍCITA DE FÁBRICA.



Z_Columna_BBDD

 

Este proceso se utiliza para buscar en todas las tablas de la base de datos el nombre de la columna que le pasemos por parámetro. El resultado serán dos columnas, la primera el nombre de la tabla y la segunda el nombre exacto de la columna en ésta.

Ej:

 

Z_Columna_BBDD 'IdCliente'

 

  



 

 

Z_Diferencia_Stocks_Movimientos

 

Muestra todos los artículos en los cuales el stock difiere del cálculo de los movimientos del mismo.

Lo comprueba comparando las tablas Articulos_Stock, Almacen_Hist_Mov y Almacen_Movimientos. En caso de no existir un descuadre, al ejecutarlo no dará ningún resultado. De lo contrario, aparecerán los siguientes campos:

 

IdArticulo -> Artículos_Stock

IdAlmacen -> Almacen_Hist_Mov

CantidadMovimiento -> Almacen_Hist_Mov (campo calculado).

Stock --> Articulos_Stock

 

 

La CantidadMovimiento es el cálculo según los movimientos del artículo, mientras que el stock es el stock actual del artículo en su ficha.



 

Z_MataProcesos_Usuarios

 

Elimina todos los procesos que existan en la base de datos en ejecución de todos los usuarios menos los del usuario que lo lanza.


 

 


Z_PK

 

Se utiliza para averiguar la Clave Primaria (Primary Key) de una tabla.

Ej:

 

Z_PK 'Clientes_Datos'

 

 




Z_SP_Actualiza_directorio

 

Reestablece los valores de los parámetros de los directorios al valor original (PATHLISTADOS, PATHIMAGENES, PATHICONOS, PATHFICHEROS, CRMPATHGRID, VERSION).

 

 

 

ZActualiza_Parametros


 

Este procedimiento se utiliza exclusivamente para el actualizador. Es para adaptar la tabla ceesi_configuracion del formato antiguo al nuevo.


 

 

ZActualiza_Parametros2


 

Este procedimiento se utiliza exclusivamente para el actualizador. Es para adaptar la tabla ceesi_configuracion del formato antiguo al nuevo.

 

 

 

zActualizador_BorrarObjetos

 

Proceso para borrar los objetos marcados como Borrar_Si_Existe=1 en la tabla Actualizador_Objetos a la hora de actualizar.

 

 


zActualizador_ComprobarGenerarVersion


 

Uso exclusivo del actualizador.

 


 

zActualizador_ScriptsObjetos


 

Uso exclusivo del actualizador.
 

 

 

ZActualizaIdArticulo

 

Proceso para modificar el Id de un artículo.

Se debe utilizar pasándole el IdArtículo actual y el IdArtículo nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdArticulo 'Art_1','Art_2'

 

 


 

ZActualizaIdCentroCoste

 

Proceso para modificar el Id de un centro de coste.

Se debe utilizar pasándole el IdCentroC actual y el IdCentroC nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdCentroCoste 'CC_1','CC_2'

 

 

 

 

ZActualizaIdCliente

 

Proceso para modificar el Id de un cliente.

Se debe utilizar pasándole el IdCliente actual y el IdCliente nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdCliente 'Cliente_1','Cliente_2'

 

 

 

 

ZActualizaIdMaquina

 

Proceso para modificar el Id de un artículo máquina.

Se debe utilizar pasándole el IdMaquina actual y el IdMaquina nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdMaquina 'Maq_1','Maq_2'

 

 

 

ZActualizaIdProveedor

 

Proceso para modificar el Id de un proveedor.

Se debe utilizar pasándole el IdProveedor actual y el IdProveedor nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdProveedor 'Prov_1','Prov_2'

 

 

 

ZActualizaIdubicacion

 

Proceso para modificar el Id de una ubicación.

Se debe utilizar pasándole el IdUbicacion actual y el IdUbicacion nuevo. Lo modificará en todas las tablas del ERP en las que exista. Podremos verlo en los resultados del SQL tras ejecutarlo.

Ej:

 

ZActualizaIdUbicacion 'Ubic_1','Ubic_2'

 

  

 

 

ZActualizaSubcuentas9Digitos

 

Proceso para actualizar todas las subcuentas de 8 dígitos a 9.

 

 

 
 

zAhora_Planes_EstablecerDigitosSubcuentas

 

Proceso para modificar la configuración de las cuentas/subcuentas a un número de digitos determinado en el plan contable seleccionado, si no se selecciona ninguno se actualizan los dígitos en todos.

 

                 @IdEjercicio            IdEjercicio con los valores de las longitudes de las cuentas deseado

                 @IdPlan                    Plan contable

 

Ej:


 

zAhora_Planes_EstablecerDigitosSubcuentas '2','1'

 


 

ZAhoraSeguridadEquiv_NodoMenuForm

 

Proceso para recorrer la tabla "ahora_Equiv_Nodos_MenusForm" para poner la misma seguridad del nodo al menú.

 

 


 

ZArchivarMovimientosAlmacen

 

Se utiliza para archivar los movimientos de almacén correspondientes al año pasado como parámetro y los anteriores.

Se le debe pasar el año hasta el que se desea archivar. Crea una tabla nueva con los movimientos de todos los años a archivar y añade movimientos manuales de entrada/salida resumen de los movimientos de los mismos. La sotred crea el movimiento de almacén 0 y lo elimina al finalizar la ejecución.

 

Ej:

 

ZArchivarMovimientosAlmacen '2018'

 

 


 

ZArregla_StockNSeries_NoCoincide

 

Proceso para igualar la cantidad del movimiento a la cantidad del movimiento de los números de serie.


 

 

ZArreglaIdCentroCoste

 

Proceso que recorre todos los campos de todas las tablas de tipo "T_Id_CentroCoste" y lo modifica rellenando con ceros por la parte izquierda hasta conseguir la longitud especificada por el parámetro "CENTRO_COSTE_LONGITUD".


 



 

ZAsignaPermisosAGrupo

 

Proceso para asignar permisos a todos los objetos para un solo grupo.

 

Ej:


 

ZASIGNA_PROPIEDADES_BBDD 'GRUPOAHORA'

 

 

 


 

ZAsignaPermisosATodo

 

Proceso para asignar permisos a todos los objetos.

 



 

ZBorraAlbaranesNoFacturables

 

Proceso para borrar albaranes no facturables junto a sus pedidos y movimientos. En caso de que aparezca algún conflicto en alguno de los borrados, el proceso continúa y se informa cuando finalice.





ZBorraMovsAlm_Inventario

Proceso para insertar un contramovimiento de los movimientos de almacén encontrados entre esas fechas y con ese inventario.

@FechaIni    T_Fecha_Corta,

@FechaFin    T_Fecha_Corta,

@IdInventario    int


 


 

ZBorraMovsAlm_Inventario_NSeries

 

Proceso para insertar un contramovimiento de los movimientos de almacén encontrados entre esas fechas y con ese inventario y comprueba si tiene números de serie.

@FechaIni    T_Fecha_Corta,

@FechaFin    T_Fecha_Corta,

@IdInventario    int


 


 

 

ZCambiaPKTabla

 

Proceso para modificar la clave primaria de una tabla. Para ello, ésta se elimina y se vuelve a crear. También se eliminan todos los objetos dependientes (FKs) y se recrean con posterioridad. Si existe un índice clustered y se especifica que la PK lo es, se regenera el índice como nonclustered.

 

@Tabla            VARCHAR(255),

@Nombre            VARCHAR(255),

@Campos            VARCHAR(1000),

@Clustered        BIT

 



 

ZCompruebaBalances_Plan0

 

Proceso de prueba (test) de que los balances de situación y de PYG de España dan el resultado esperado.

Para que vaya bien no debe devolver ningún registro.

 

    @IdPlan int=0,

    @IdBalance varchar(50),-- ='NPG'--'NBS' --('NPG')

    @TipoB tinyint,-- =1--2 --

    --- 1-- Perdidas y Ganancias

    ----2 Situacion 

    @IdEjercicio int=0,

    @IdEjercicio_1 int=null

 

 

 


ZCompruebaBalances_Plan1

 

Proceso de prueba (test) de que los balances de situación y de PYG de Marruecos dan el resultado esperado.

Para que vaya bien no debe devolver ningún registro.

 

     @IdPlan int=1,

     @Idejercicio int,

     @IdEjercicio_1 int =NULL,

     @IdBalance varchar(50),

     @IdBalance_2 varchar(50)=NULL,

     @RdoEjercicioB1_0 varchar(255),

     @RdoEjercicioB1_1 varchar(255) ,

     @TipoB int ,    --- 1-- Perdidas y Ganancias    ----2 Situacion 

 

 


 

 

ZConfiguracion

 

Proceso para buscar parámetros en la tabla CEESI_Configuración. Se puede introducir tanto el parámetro completo como una parte de él para buscar todo lo que lo contenga.

 

Ej:

 

zconfiguracion 'partes'

 

 

 


ZConfiguracionUpdate

 

Proceso para modificar el valor de algún parámetro de la tabla CEESI_Configuracion.

 

Ej:

 

ZConfiguracionUpdate 'PATHLISTADOS','D:\Listados'

 

 


 

zCreaInsertsCasillasModelosIVA


 

Proceso que retorna los inserts que debemos copiar y pegar en el static data de las tablas AgTributaria_Modelos_Definiciones_Casillas y AgTributaria_Operaciones_Fiscales_Casillas. Comprueba de qué tipo es la casilla y en función de éste efectúa una acción u otra.


 



ZCreaUsuario


Proceso para crear un usuario y darle permisos a todo.

Ej:

ZCreaUsuario 'ahora'


 


 

ZDesactualizar_FactPorRangos


Proceso para desactualizar facturas de venta masivamente comprendido entre un rango de IdFactura's.


Ej:


ZDesactualizar_FactPorRangos '2','50'



 



ZDeshabilita_CA


Proceso para habilitar o deshabilitar las claves ajenas de la base de datos actual.


Ej:


ZDeshabilita_CA 1 --para deshabilitar <> 1 para habilitar




 

ZDeshabilita_GestionDocumental


Proceso para habilitar o deshabilitar las claves ajenas de la base de datos actual.


Ej:


ZDeshabilita_GestionDocumental 1 --para deshabilitar <> 1 para habilitar




 

ZDeshabilita_Triggers


Proceso para habilitar o deshabilitar los triggers de la base de datos actual.

Ej:

ZDeshabilita_Triggers 1 --para deshabilitar <> 1 para habilitar

 


 


zdeshacer_certificaciones


Proceso para deshacer las certificaciones de una oferta y cliente.

Ej:

zdeshacer_certificaciones 'IdCliente','NumOferta'


 



ZDetectaProblemasBalances

 

Proceso para comprobar que los balances están cuadrados. En caso de ser así, devuelve un 1. De lo contrario, devuelve un 0 y el mensaje del posible motivo de descuadre del balance.





ZElimina_CA

 

Proceso para eliminar la clave ajena de una tabla.

 


 

Zelimina_EjercicioContabilidad

 

Proceso para eliminar un ejercicio de contabilidad.

 


 

ZElimina_Indices

 

Proceso para eliminar los índices de una tabla.
 

 



ZElimina_Triggers

 

Proceso para eliminar los triggers de una tabla.





ZEliminaAlbaranes


 
Proceso para eliminar los albaranes de una determinada serie. Saca una copia de la base de datos sobre el fichero informado, y modifica la base de datos actual eliminando los albaranes requeridos y actualizando los movimientos.

 

@BD VARCHAR(50),

@SerieAlbaran VARCHAR(50),

@FicheroCopiaBD VARCHAR(255) = ''

 

Ej:

 

ZEliminaAlbaranes ‘BBDD_CLIENTE’,’2’,’BBDD_COPIA’





ZExiste_Tabla



Proceso para comprobar si existe una tabla en la base de datos.

 

 

@Tabla Varchar(32), -- Tabla por la que se pregunta

@Verbose T_Booleano=0, -- Si se printea o no el resultado

@Db Varchar(32)=NULL AS -- Base de datos en la que se testea

 

Ej:

 

ZExiste_Tabla ‘NombreTabla’,’1’,’ERPVACIA’




ZGeneraScript_IniciosdeSesion


 
Proceso para generar un script que crea los inicios de sesión y asigna los usuarios a los grupos tras restaurar una copia de seguridad. Se ha de ejecutar en la BBDD Destino. Las contraseñas hay que volver a crearlas.




ZInserta_NoExisten


Proceso para insertar los registros de la tabla pasada por parámetro de la base de datos pasada por parámetro que no existen en la misma tabla, en la base de datos actual.

@Tabla Varchar(32), -- Tabla a comparar 

@Db Varchar(32), -- Bd con la que se compara, la OTRA es la actual

@NoIdentity T_Booleano =0 , -- Indica si la tabla tiene o no campo Identity 1=No, 0=Si

 

Ej:

ZInserta_NoExisten ‘TablaAComparar’,’BaseDeDatosAComparar’





ZListarNIFsNoValidos


Proceso para devolver todos los NIFs no válidos. Recorre clientes, proveedores y bancos.

Clientes à Mira el parámetro “CLIENTES_NIF_OBLIGATORIO”. Si el valor de éste es ON, mira si el país tiene NIF obligatorio. De ser así, el campo NIF con el valor NULL se considera incorrecto.

 

Proveedores --> mira el parámetro “PROV_NIF_NECESARIO”. Si el valor de éste es ON, el campo NIF con valor NULL se considera incorrecto.

Banco --> los NIFs que su valor es NULL se consideran correctos.




ZModificaDatosBD


Proceso para enmudecer bases de datos. Cambia los nombre de clientes, proveedores, artículos, etc por 'Cliente01', 'Proveedor01', 'Artículo01', etc. Es decir, elimina datos sensibles que puedan existir en la base de datos.





ZModificaEstadoContrato

Proceso para modificar el estado de las líneas y cabecera del contrato pasado por parámetro a CERRADO FACTURADO.

Ej:

ZModificaEstadoContrato ‘150’





ZPermisos

Proceso para asignar permisos a un objeto a todos los grupos dados de alta.

@ObjName nVarchar(255) ,

       @MsjFinal Bit = 1,

       @esquema  nVarchar(100)='dbo'

Ej:

ZPermisos ‘Empleados’




zPers_SerializarArticulos

Proceso para modificar la configuración de un artículo sin nº de serie para que trabaje con nº de serie.

Se recorren los movimientos de almacén del artículo implicado, generando e informando Articulos_NSeries para cada uno de ellos. También rellena las ubicaciones de los objetos relacionados, se consumen los nº de serie necesarios, se ponen en circulación los restantes y se comprueba el sumatorio de nº de serie en circulación coincida con el stock informado del artículo.

OJO: no se han implementado todos los tipos de movimientos ni tampoco se garantiza que las ubicaciones donde quedan los nº de serie sean correctas.

Ej:

zPers_SerializarArticulos ‘IdArticulo’




zPlantillaTriggerUpdate

Proceso para generar una plantilla de trigger de update de la tabla pasada por parámetro.

@Tabla       VARCHAR(255)

 

Ej:

zPlantillaTriggerUpdate ‘NombreTabla’




ZRecodificaSubcuentas

Proceso para recodificar las Subcuentas, Clientes y Proveedores. Se inserta 0’s en la posición especificada por los parámetros @pos%.

Ojo: este procedimiento es para una longitud fija de subcuentas, clientes y proveedores, la configuración de parámetros u otros, queda fuera de éste.

 

       @longitud    smallint,                               -- longitud que queremos para las Subcuentas, Clientes y Proveedores

       @posCli             smallint,                               -- posicion en la que se inserta los 0 en clientes (desde la izquierda)

       @posProv     smallint,                               -- posicion en la que se inserta los 0 en proveedores (desde la izquierda)

       @posSubC     smallint,                               -- posicion en la que se inserta los 0 en subcuentas (desde la izquierda)

       @cuentasExcepcion varchar(MAX)=NULL,    -- separados por comas los inicios de las subcuentas (o las subcuentas) con otra posicion. ejemplo: '4301%,4302%'

       @posSubCExcepcion smallint=NULL,        -- posicion en la que se inserta los 0 en las subcuentas de excepcion (desde la izquierda)

       @longitudActual int=8                                -- logitud actual de las subcuentas

AS

 

Ej:

ZRecodificaSubcuentas 9, 5, 5, 3, '4301%,4302%', 5, 8





ZRecompilaTodo

Proceso para recompilar todos los objetos del sistema.



¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones
Se requiere la verificación del CAPTCHA.

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo