Reinicio de Secuencias

De Quipux

Todos los años en el sistema es necesario reiniciar las secuencias en el sistema y crear la bodega para el nuevo año, para esto se debe crear un archivo en la raiz del sistema quipux:

vim inicio_anio_quipux.php

y se copia el siguiente código:

<?php
$ruta_raiz = ".";
include_once ("$ruta_raiz/include/db/ConnectionHandler.php");
include_once ("$ruta_raiz/config.php");
error_reporting(7);
$db = new ConnectionHandler("$ruta_raiz");
$db->conn->SetFetchMode(ADODB_FETCH_ASSOC);
$anio = date("Y");
$mensaje = "";
// Creamos la carpeta bodega
$dir_bodega = "$ruta_raiz/bodega/$anio";
if (!is_dir($dir_bodega)) {
    $flag = mkdir($dir_bodega, 0755);
    if (!$flag) die ("Error - No se pudo crear la bodega");
}
// Consulto las areas creadas en el sistema
$rs = $db->query("select depe_codi from dependencia");
// Creamos la estructura de la bodega
while(!$rs->EOF) {
    $carpeta = substr("000000".trim($rs->fields["DEPE_CODI"]),-6);
    $dir_carpeta = "$dir_bodega/$carpeta";
    if (!is_dir($dir_carpeta)) {
        $flag = mkdir("$dir_carpeta", 0755);
        if (!$flag) $mensaje .= "Error - Al crear la carpeta $dir_carpeta 
"; } $dir_carpeta .= "/docs"; if (!is_dir($dir_carpeta)) { $flag = mkdir("$dir_carpeta", 0755); if (!$flag) $mensaje .= "Error - Al crear la carpeta $dir_carpeta
"; }
    $rs->MoveNext();
}
if ($mensaje == "") $mensaje = "La estructura de la bodega se creo correctamente";
echo $mensaje;
$ok = $db->query("update formato_numeracion set fn_contador=0");
if ($ok) $mensaje = "Las secuencias se reiniciaron correctamente.";
else $mensaje = "Existieron errores al reiniciar las secuencias. Por favor ejecute el siguientye query en su BDD:
update formato_numeracion set fn_contador=0"; echo "


".$mensaje; ?>

se graba y se ejecuta lo siguiente desde el navegador:

http://localhost/inicio_anio_quipux.php

Deben salir los siguientes mensajes:

La estructura de la bodega se creo correctamente
Las secuencias se reiniciaron correctamente.

Si aparece algún error se puede volver a ejecutar el script o corregir los errores manualmente, el único sitio donde podrían aparecer inconvenientes es con los permisos al crear crear las carpetas en la bodega, se debe asegurarse que el usuario apache tenga permisos de escritura en esta carpeta.

Una vez que finalice este proceso por favor se debe poner

un die(""); 

al inicio del código para que nadie más lo vuelva a ejecutar hasta el siguiente año o se debe eliminen el archivo.

Herramientas personales