Cargando...
Buscando...
Nada coincide
LegalizacionLibrosDA.cs
1using System;
2using System.Collections.Generic;
3using System.Data;
4using System.Linq;
5using System.Text;
6using System.Threading.Tasks;
7using sage.ew.db;
10using sage.ew.global;
14
16{
21 {
30 public bool _Comprobar_Existe_Documento(string tcDatabase, string tcTabla, string tcEmpresa, string tcEjercicio)
31 {
32 bool existeDocumento = false, llOk = true;
33 DataTable numeroDataTable = new DataTable();
34
35 llOk = DB.SQLExec("SELECT NUMERO " +
36 "FROM " + DB.SQLDatabase(tcDatabase, tcTabla) + " " +
37 "WHERE EMPRESA = " + DB.SQLString(tcEmpresa) + " " +
38 "AND NUMERO = " + DB.SQLString(tcEjercicio.Trim()), ref numeroDataTable);
39
40 if (llOk && numeroDataTable.Rows.Count > 0)
41 existeDocumento = true;
42
43 return existeDocumento;
44 }
45
46
57 public void _AgruparLineasPorTipoLibro(LegalizacionLibros toLegalizacionLibros, string tcEmpresa)
58 {
59 string lcSql = "";
60 bool llOk = false;
61
62 // Pongo en negativo todas las lineas para asegurarme que más tarde cuando empiece a actualizar el campo LINEA con valores
63 // reales no empiece a petar la clave del índice primario de la tabla COMUNES!D_LEGLBR el cual contiene el campo LINEA.
64 //
65 try
66 {
67 lcSql = "update " + DB.SQLDatabase("comunes", "d_leglbr") + " set linea=abs(linea)*-1 " +
68 "where empresa=" + DB.SQLString(tcEmpresa) + " and numero=" + DB.SQLString(toLegalizacionLibros._Numero);
69 llOk = DB.SQLExec(lcSql);
70 }
71 catch (Exception)
72 {
73 // Si algo no va bien vuelvo a dejar todo en positivo, la clase ManteTRel con numeros negativos en el campo LINEA
74 // no va del todo bien y borra lineas cuando se hace el _Save().
75 //
76 lcSql = "update " + DB.SQLDatabase("comunes", "d_leglbr") + " set linea=abs(linea) " +
77 "where empresa=" + DB.SQLString(tcEmpresa) + " and numero=" + DB.SQLString(toLegalizacionLibros._Numero);
78 DB.SQLExec(lcSql);
79 return;
80 }
81
82 // Construyo una lista con los tipos de fichero a partir del diccionario de tipos de ficheros.
83 //
84 List<string> lstTiposLibro = new List<string>(toLegalizacionLibros._LineasLegalizacionLibros._dicTiposLibro.Values);
85
86 // Obtengo todas las linea de la base de datos que hay en la legalización.
87 //
88 DataTable ldtLineas = new DataTable();
89 lcSql = "select tipo, linea from " + DB.SQLDatabase("comunes", "d_leglbr") + " " +
90 "where empresa=" + DB.SQLString(tcEmpresa) + " and numero=" + DB.SQLString(toLegalizacionLibros._Numero) + " " +
91 "order by tipo, num_libro";
92 llOk = DB.SQLExec(lcSql, ref ldtLineas);
93
94
95 int lnNuevaLinea = 1;
96 int lnAntiguaLinea = 0;
97
98 // Para cada tipo de fichero que tenga especificado en la lista de orden a seguir, busco si hay lineas de este tipo y
99 // si encuentro alguno renumero su campo LINEA.
100 //
101 foreach (string tcTipoLibro in lstTiposLibro)
102 {
103 // Busco si hay lineas de este tipo de fichero declaradas.
104 //
105 DataRow[] laRows = ldtLineas.Select("tipo=" + DB.SQLString(tcTipoLibro));
106
107 // Recorro las lineas encontradas y le pongo el campo LINEA que le correponde.
108 //
109 for (int ln_i = 0; ln_i < laRows.Length; ln_i++)
110 {
111 lnAntiguaLinea = Convert.ToInt32(laRows[ln_i]["linea"]);
112 lcSql = "update " + DB.SQLDatabase("comunes", "d_leglbr") + " set linea=" + Convert.ToString(lnNuevaLinea).Trim() + " " +
113 "where empresa=" + DB.SQLString(tcEmpresa) + " and numero=" + DB.SQLString(toLegalizacionLibros._Numero) + " " +
114 "and tipo=" + DB.SQLString(tcTipoLibro) + " and linea=" + Convert.ToString(lnAntiguaLinea).Trim();
115 llOk = DB.SQLExec(lcSql);
116 lnNuevaLinea++;
117 }
118 }
119
120 return;
121 }
122 }
123}
Clase de acceso datos para la clase LegalizacionLibros.
void _AgruparLineasPorTipoLibro(LegalizacionLibros toLegalizacionLibros, string tcEmpresa)
Renumerar el campo LINEA de la tabla D_LEGLBR de la legalización en curso para que todos los registro...
bool _Comprobar_Existe_Documento(string tcDatabase, string tcTabla, string tcEmpresa, string tcEjercicio)
Comprobar si el documento legalizacion de libos existe o no.
Dictionary< string, string > _dicTiposLibro
Diccionario donde guardaremos la codificación de los diferentes tipos de libros, su descripción larga...
Clase de negocio para legalización de libros en registro mercantil.
LineasLegalizacionLibros _LineasLegalizacionLibros
Propiedad con las lineas de los libros incluidos en la legalización.
string _Numero
Ejercicio al que corresponde la presentación de los libros.
Clase para el acceso a datos de la clase DocumentoBase.
Interfaz de acceso datos para la clase LegalizacionLibros.