CM
Gracias por responder
He instalado MariaDB, en la PC del cliente, sin alterar nada en tal proceso. Luego, con el programa creo Usuarios con estos privilegios:
Code: Select all
CREATE,INSERT,UPDATE,DELETE,SELECT,CREATE VIEW,SHOW VIEW
No obstante cuando borro la vista desde HeidiSQL, tanto si ingreso como un usuario, como si lo hago como root, no crea la vista (no recuerdo el mensaje de error ahora).
O sea para crearla nuevamente recurro a un backup que hice desde mi PC pero, al ejecutar la app, muestra el dialog de error que mostré en el primer post.
Manu, gracias, esta es la sentencia:
Code: Select all
aEstructura[_VTUTORES ]:= "CREATE VIEW IF NOT EXISTS vista_tutores AS " + ;
"SELECT id_tutor,tutor1 AS TUTORFAC,dniT1 AS DCTO,doctipoT1 AS DOCTIPO,direcnroT1 AS DIREC,locprovT1 AS LOCALI," + ;
"pisoT1 AS PISO,dptoT1 AS DPTO,manzanaT1 AS MANZA,parcelaT1 AS PARC,chacraT1 AS CHACRA,barrioT1 AS BARRIO,totcuotas " + ;
"FROM tutores WHERE FacAfipT1=1 " + ;
"UNION SELECT id_tutor,tutor2 AS TUTORFAC,dniT2 AS DCTO,doctipoT2 AS DOCTIPO,direcnroT2 AS DIREC,locprovT2 AS LOCALI," + ;
"pisoT2 AS PISO,dptoT2 AS DPTO,manzanaT2 AS MANZA,parcelaT2 AS PARC,chacraT2 AS CHACRA,barrioT2 AS BARRIO,totcuotas " + ;
"FROM tutores WHERE FacAfipT2=1 " + ;
"UNION SELECT id_tutor,razsocial AS TUTORFAC,cuit AS DCTO,doctipoRS AS DOCTIPO,direcnroRS AS DIREC,locprovRS AS LOCALI," + ;
"pisoRS AS PISO,dptoRS AS DPTO, '' ,'' ,'' ,'' ,totcuotas " + ;
"FROM tutores WHERE FacAfipRS=1 " + ;
"ORDER BY TUTORFAC,DCTO"
Para entender la vista. Se toma de la tabla de Tutores. Esta tiene los datos de un Tutor1 (generalmente el padre), Tutor2 (la madre), y si procede una Razon Social (Esta tabla, tiene bastante datos, pero la transcribo por si ayuda). De manera que mediante un campo TINYINT(1), se define a nombre de quien se genera la factura, que se selecciona de un xBrowse de tal VISTA.
Code: Select all
aEstructura[_TUTORES ]:= "CREATE TABLE IF NOT EXISTS tutores (" + ;
"id_tutor INT(7) UNSIGNED ZEROFILL AUTO_INCREMENT PRIMARY KEY," + ;
"DeBaja TINYINT(1) DEFAULT 0," + ; // 0 Alta - 1 Baja
"TotCuotas FLOAT(10,2) DEFAULT 0," + ;
; // Padre
"FacAfipT1 TINYINT(1) DEFAULT 0," + ; // 1 USA p/Facturar
"Tutor1 VARCHAR(50) DEFAULT ''," + ;
"DNIT1 VARCHAR(9) DEFAULT ''," + ;
"DocTipoT1 INT(2) DEFAULT 96," + ; // 96=FE_DNI segun
"DirecNroT1 VARCHAR(70) DEFAULT ''," + ;
"PisoT1 CHAR(2) DEFAULT ''," + ;
"DptoT1 CHAR(4) DEFAULT ''," + ;
"ManzanaT1 CHAR(3) DEFAULT ''," + ;
"ParcelaT1 CHAR(3) DEFAULT ''," + ;
"ChacraT1 CHAR(3) DEFAULT ''," + ;
"CircunsT1 CHAR(3) DEFAULT ''," + ;
"BarrioT1 VARCHAR(40) DEFAULT ''," + ;
"CodPosT1 CHAR(8) DEFAULT ''," + ;
"LocProvT1 VARCHAR(40) DEFAULT ''," + ;
; // Madre
"FacAfipT2 TINYINT(1) DEFAULT 0," + ; // 1 USA p/Facturar
"Tutor2 VARCHAR(50) DEFAULT ''," + ;
"DNIT2 VARCHAR(9) DEFAULT ''," + ;
"DocTipoT2 INT(2) DEFAULT 96," + ; // 96=FE_DNI segun
"DirecNroT2 VARCHAR(70) DEFAULT ''," + ;
"PisoT2 CHAR(2) DEFAULT ''," + ;
"DptoT2 CHAR(4) DEFAULT ''," + ;
"ManzanaT2 CHAR(3) DEFAULT ''," + ;
"ParcelaT2 CHAR(3) DEFAULT ''," + ;
"ChacraT2 CHAR(3) DEFAULT ''," + ;
"CircunsT2 CHAR(3) DEFAULT ''," + ;
"BarrioT2 VARCHAR(40) DEFAULT ''," + ;
"CodPosT2 CHAR(8) DEFAULT ''," + ;
"LocProvT2 VARCHAR(40) DEFAULT ''," + ;
; // Empresa
"FacAfipRS TINYINT(1) DEFAULT 0," + ; // 1 USA p/Facturar
"CUIT CHAR(11) DEFAULT ''," + ;
"DocTipoRS INT(2) DEFAULT 80," + ; // 80=FE_cuit segun
"CondIVA INT(2) DEFAULT 1," + ; // 1=FE_RespInscri
"RazSocial VARCHAR(50) DEFAULT ''," + ;
"DirecNroRS VARCHAR(70) DEFAULT ''," + ;
"PisoRS CHAR(2) DEFAULT ''," + ;
"DptoRS CHAR(4) DEFAULT ''," + ;
"CodPosRS CHAR(8) DEFAULT ''," + ;
"LocProvRS VARCHAR(40) DEFAULT ''," + ;
; // Contactos
"MovilT1 VARCHAR(30) DEFAULT ''," + ;
"LaboralT1 VARCHAR(30) DEFAULT ''," + ;
"Correo_eT1 VARCHAR(100) DEFAULT ''," + ;
;
"MovilT2 VARCHAR(30) DEFAULT ''," + ;
"LaboralT2 VARCHAR(30) DEFAULT ''," + ;
"Correo_eT2 VARCHAR(100) DEFAULT ''," + ;
; // Otros
"Contacto VARCHAR(30) DEFAULT ''," + ;
"MovilX VARCHAR(30) DEFAULT ''," + ;
"FijoX VARCHAR(30) DEFAULT ''," + ;
"Observa TINYTEXT," + ;
; // Indices
"INDEX id_tutor (id_tutor)," + ;
"INDEX tutor_1 (tutor1(20))," + ;
"INDEX dni_1 (DNIT1)," + ;
"INDEX tutor_2 (tutor2(20))," + ;
"INDEX dni_2 (DNIT2) )" + ;
"COMMENT= 'Tabla de Tutores'" + ;
"ENGINE= INNODB," + ;
"DEFAULT CHARSET=utf8," + ;
"COLLATE=utf8_spanish_ci;"