-- --------------------------------------------------------------------------------------------------------------
-- CamposAdicionales
-- --------------------------------------------------------------------------------------------------------------
-- + Latitud
-- + TipoMovimiento

ALTER TABLE CamposAdicionales ADD COLUMN Longitud INTEGER;
ALTER TABLE CamposAdicionales ADD COLUMN TipoMovimiento INTEGER;


-- --------------------------------------------------------------------------------------------------------------
-- Perfil
-- --------------------------------------------------------------------------------------------------------------
-- + Latitud
-- + TipoMovimiento

ALTER TABLE Perfil ADD COLUMN Longitud INTEGER;
ALTER TABLE Perfil ADD COLUMN TipoMovimiento INTEGER;


-- --------------------------------------------------------------------------------------------------------------
-- EmpresarialTiposDocumento
-- --------------------------------------------------------------------------------------------------------------
-- - Trazabilidad
-- + Servir

DROP TABLE IF EXISTS _EmpresarialTiposDocumento;
CREATE TEMPORARY TABLE _EmpresarialTiposDocumento AS SELECT * FROM EmpresarialTiposDocumento;

DROP TABLE EmpresarialTiposDocumento;

CREATE TABLE EmpresarialTiposDocumento (
    ID                                               VARCHAR (128) NOT NULL,
    IDEmpresa                                        VARCHAR (128) NOT NULL,
    Icono                                            VARCHAR (50)  DEFAULT NULL,
    TipoMovimiento                                   INTEGER       DEFAULT 0,
    DescripcionSingular                              VARCHAR (40)  DEFAULT NULL,
    DescripcionPlural                                VARCHAR (40)  DEFAULT NULL,
    GenerarCobros                                    INTEGER       DEFAULT 0,
    ActualizarStock                                  INTEGER       DEFAULT 0,
    ActivarTasas                                     INTEGER       DEFAULT 0,
    ActivarControlRiesgoCliente                      INTEGER       DEFAULT 0,
    ActivarParaConsultasHistoricos                   INTEGER       DEFAULT 0,
    IDAlmacen                                        VARCHAR (128) DEFAULT NULL,
    IDSerie                                          VARCHAR (128) DEFAULT NULL,
    IDFormaPago                                      VARCHAR (128) DEFAULT NULL,
    IDTipoAbono                                      VARCHAR (128) DEFAULT NULL,
    BloquearAnyadirDocumento                         INTEGER       DEFAULT 0,
    BloquearDuplicarDocumento                        INTEGER       DEFAULT 0,
    BloquearModificacionDocumentoGuardado            INTEGER       DEFAULT 0,
    BloquearModificacionDocumentoEmitido             INTEGER       DEFAULT 0,
    BloquearEliminarDocumento                        INTEGER       DEFAULT 0,
    NoCalcularImportes                               INTEGER       DEFAULT 0,
    PermitirClientesPotenciales                      INTEGER       DEFAULT 0,
    Servir                                           INTEGER       DEFAULT 0,
    FirmaObligatoria                                 INTEGER       DEFAULT 0,
    TraspasarA                                       VARCHAR (128) DEFAULT NULL,
    EmailAsunto                                      VARCHAR (100) DEFAULT NULL,
    EmailCuerpo                                      TEXT,
    Emp_DiasAntiguedadBorrarDocumentosAlRecibirDatos INTEGER       DEFAULT 0,
    Orden                                            INTEGER       DEFAULT 0,
    PRIMARY KEY (
        ID,
        IDEmpresa
    )
);

INSERT INTO EmpresarialTiposDocumento (
    ID,
    IDEmpresa,
    Icono,
    TipoMovimiento,
    DescripcionSingular,
    DescripcionPlural,
    GenerarCobros,
    ActualizarStock,
    ActivarTasas,
    ActivarControlRiesgoCliente,
    ActivarParaConsultasHistoricos,
    IDAlmacen,
    IDSerie,
    IDFormaPago,
    IDTipoAbono,
    BloquearAnyadirDocumento,
    BloquearDuplicarDocumento,
    BloquearModificacionDocumentoGuardado,
    BloquearModificacionDocumentoEmitido,
    BloquearEliminarDocumento,
    NoCalcularImportes,
    PermitirClientesPotenciales,
    FirmaObligatoria,
    TraspasarA,
    EmailAsunto,
    EmailCuerpo,
    Emp_DiasAntiguedadBorrarDocumentosAlRecibirDatos,
    Orden
)
SELECT 
    ID,
    IDEmpresa,
    Icono,
    TipoMovimiento,
    DescripcionSingular,
    DescripcionPlural,
    GenerarCobros,
    ActualizarStock,
    ActivarTasas,
    ActivarControlRiesgoCliente,
    ActivarParaConsultasHistoricos,
    IDAlmacen,
    IDSerie,
    IDFormaPago,
    IDTipoAbono,
    BloquearAnyadirDocumento,
    BloquearDuplicarDocumento,
    BloquearModificacionDocumentoGuardado,
    BloquearModificacionDocumentoEmitido,
    BloquearEliminarDocumento,
    NoCalcularImportes,
    PermitirClientesPotenciales,
    FirmaObligatoria,
    TraspasarA,
    EmailAsunto,
    EmailCuerpo,
    Emp_DiasAntiguedadBorrarDocumentosAlRecibirDatos,
    Orden
FROM _EmpresarialTiposDocumento;

DROP TABLE IF EXISTS _EmpresarialTiposDocumento;

CREATE INDEX NDX_EmpresarialTiposDocumento_IDEmpresa ON EmpresarialTiposDocumento (IDEmpresa);
CREATE INDEX NDX_EmpresarialTiposDocumento_TipoMovimiento ON EmpresarialTiposDocumento (TipoMovimiento);
CREATE INDEX NDX_EmpresarialTiposDocumento_DescripcionSingular ON EmpresarialTiposDocumento (DescripcionSingular);
CREATE INDEX NDX_EmpresarialTiposDocumento_DescripcionPlural ON EmpresarialTiposDocumento (DescripcionPlural);
CREATE INDEX NDX_EmpresarialTiposDocumento_Orden ON EmpresarialTiposDocumento (Orden);
