Exferia/Exferia_Informes/Test/Form1.cs

422 lines
22 KiB
C#

using Exferia_Aplicacion.General;
using Exferia_Aplicacion.Modelos_Informes;
using Exferia_Aplicacion.Visualizacion;
using Exferia_EntityFramework;
using Exferia_General;
using Exferia_Informes;
using Exferia_Informes._0_Modelos;
using Exferia_Informes._1_Datos;
using Exferia_Informes._3_Vistas;
using Exferia_Informes._3_Vistas.PorClientes;
using Exferia_Informes.General;
using Exferia_Informes.Informes;
using Exferia_Informes.Informes.Mandatos;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml;
namespace Test
{
public partial class Form1 : Form
{
private string g_str_RUTA = Variables.G_STR_LIBRERIA_RUTAINICIAL + @"\XML_DatosPrueba.xml";
private string g_str_idUsuario = "";
public Form1()
{
InitializeComponent();
if (!File.Exists(g_str_RUTA))
{
CrearXML();
}
else
{
Cargar_ValoresXML();
lbl_Servidor.Text = Variables.G_STR_CONEXION_SERVIDOR;
lbl_BaseDatos.Text = Variables.G_STR_CONEXION_BASEDATOS;
lbl_Perfil.Text = g_str_idUsuario;
}
//Asignar Colores de Exferia ..................................................................
Colores.G_COLOR_FONDO_BOTON = Color.Transparent;
Colores.G_COLOR_PRINCIPAL_BASE = ColorTranslator.FromHtml("#A19CC3");
Colores.G_COLOR_PRINCIPAL_OSCURO = ColorTranslator.FromHtml("#504888");
Colores.G_COLOR_PRINCIPAL_ATENUADO = ColorTranslator.FromHtml("#CBC8DF");
Colores.G_COLOR_PRINCIPAL_CLARO = ColorTranslator.FromHtml("#EDECF4");
Colores.G_COLOR_PRINCIPAL_TRASLUCIDO = Color.FromArgb(50, 191, 186, 225);
Colores.G_COLOR_SECUNDARIO_BASE = ColorTranslator.FromHtml("#FFF2C4");
Colores.G_COLOR_SECUNDARIO_CLARO = ColorTranslator.FromHtml("#FFF9E1");
Colores.G_COLOR_FONDO_BASE = ColorTranslator.FromHtml("#FFFFFF");
Colores.G_COLOR_TEXTO_ESCRITO = ColorTranslator.FromHtml("#000000");
Colores.G_COLOR_ATENCION = ColorTranslator.FromHtml("#c40909");
Colores.G_COLOR_FONDO_BARRAPROGRESO_RELLENA = ColorTranslator.FromHtml("#504888");
//Listados
Colores.G_COLOR_LISTADO_FILTROS = Color.FromArgb(50, 161, 156, 195);
Colores.G_COLOR_LISTADO_FILTROS_CONTROLESPERSONALIZADOS = Color.FromArgb(70, 161, 156, 195);
//Conexion ...............................................................
// Variables.G_STR_CONEXION_SERVIDOR = @"DESKTOP-KJVHQLH\SQLEXPRESS2014";
//Variables.G_STR_CONEXION_SERVIDOR = @"1.trialia.es,1593";
//Variables.G_STR_CONEXION_BASEDATOS = "SigmaERP2017";
//Variables.G_STR_CONEXION_USUARIO = "sa";
//Variables.G_STR_CONEXION_CLAVE = "SQL_Exferia";
Variables.G_LNG_IDCLIENTE_LICENCIAVALIDADO = 37;
//Usuario Validado .......................................................
INTERNO_UsuarioValidado_Modelo mdl_INTERNO_UsuarioValidado_Modelo = new INTERNO_UsuarioValidado_Modelo();
mdl_INTERNO_UsuarioValidado_Modelo.id = long.Parse(g_str_idUsuario != "" ? g_str_idUsuario : "0");
mdl_INTERNO_UsuarioValidado_Modelo.idPerfil = null;
mdl_INTERNO_UsuarioValidado_Modelo.nombre = "Exferia";
mdl_INTERNO_UsuarioValidado_Modelo.sincronizacionAthos = false;
mdl_INTERNO_UsuarioValidado_Modelo.esSuperUsuario = false;
Variables.G_MDL_USUARIOVALIDADO_MODELO = mdl_INTERNO_UsuarioValidado_Modelo;
Variables.G_DTT_FECHA_INICIAL_PORDEFECTO = DateTime.Now.Date;
//Delegacion
Variables.G_MDL_INTERNO_VALORESGENERALES_MODELO = null;
INTERNO_ValoresGenerales_Modelo mdl_INTERNO_ValoresGenerales_Modelo = Datos_Generales.GEN_ValoresGenerales_Obtener_Por_IdUsuario(Variables.G_MDL_USUARIOVALIDADO_MODELO.id);
if (mdl_INTERNO_ValoresGenerales_Modelo != null)
{
mdl_INTERNO_ValoresGenerales_Modelo = Datos_Generales.GEN_EjerciciosActivos_Empresa_Validar(mdl_INTERNO_ValoresGenerales_Modelo, Variables.G_DTT_FECHA_INICIAL_PORDEFECTO);
if (mdl_INTERNO_ValoresGenerales_Modelo != null)
{
Variables.G_MDL_INTERNO_VALORESGENERALES_MODELO = mdl_INTERNO_ValoresGenerales_Modelo;
}
}
//Cargar XML Configuracion pantallas
Funciones_FicherosXML.CargarDatosXML_ConfiguracionPantallas();
Funciones.Rellenar_OpcionTablaCampoCodigo();
Datos_Generales.GEN_Configuracion_CampoCodigo_Rellenar_Listado();
//LISTADO DE RUTAS Cargamos el ensamblado #########################################################################################################################################################################
//Assembly m_assembly_1 = Assembly.LoadFrom(@"C:\Users\Exferia\Documents\Visual Studio 2015\Projects\DLL\" + Variables.G_STR_LIBRERIA_INFORMES + ".dll");
Assembly m_assembly_1 = Assembly.LoadFrom($@"..\..\..\..\..\DLL\{Variables.G_STR_LIBRERIA_INFORMES}.dll");
//Obtenemos el tipo de la clase
Type m_type_1 = m_assembly_1.GetType("" + Variables.G_STR_LIBRERIA_INFORMES + "." + Variables.G_STR_LIBRERIA_DATOSINFORMES);
//creamos la instancia
var obj_Clase_1 = Activator.CreateInstance(m_type_1);
//Cargamos el metodo solicitado
MethodInfo obj_MethodInfo_1 = obj_Clase_1.GetType().GetMethod(Variables.G_STR_LIBRERIA_DATOSINFORMES_PROCEDIMIENTO_INFRUTAS_RELLENARLISTADO, BindingFlags.Instance | BindingFlags.NonPublic);
//Obtener valores
object[] arr_Parametros_1 = { };
obj_MethodInfo_1.Invoke(obj_Clase_1, arr_Parametros_1);
//##############################################################################################################################################################################################
Datos_Generales.PRV_OpcionesDetalle_Cargar();
Datos_Generales.PRV_Productos_Cargar();
Repintar.Empezar(this);
//Variable con el codigo del cliente de la ExferiaStore
Variables.G_LNG_IDCLIENTE_LICENCIAVALIDADO = 37;//105;//;37
Variables.G_SPL_PANTALLASPRINCIPAL = spl_Principal;
Variables.G_PNL_PANTALLASEMPOTRADAS = spl_Principal.Panel1;
Variables.G_PNL_PANTALLASEMPOTRADAS_SECUNDARIA = spl_Principal.Panel2;
Variables.G_EMS_CONTROL_MENUSUPERIOR = ex_msp_Menu;
Funciones_PanelSecundario.Rellenar_Listados_ArbolSecundarioSeleccion();
//calcular distancia del splitter
spl_Principal.SplitterDistance = this.Width / 2;
spl_Principal.Panel2Collapsed = true;
Datos_Generales.Permisos_Cargar();
Variables.G_BOL_CONEXION_SINCRONIZACIONCRM_ACTIVA = true;
}
private void btn_Abrir_Listado_Click(object sender, EventArgs e)
{
string str_NombreLibreria = txt_Listado_Libreria.Text;
string str_Opcion = cbo_Listado_Libreria.Text;
//Cargamos el ensamblado
Assembly m_assembly = Assembly.LoadFrom(Variables.G_STR_LIBRERIA_RUTAINICIAL + @"\" + str_NombreLibreria + ".dll");
//Obtenemos el tipo de la clase
Type m_type = m_assembly.GetType(str_NombreLibreria + "." + Variables.G_STR_LIBRERIA_OPCIONES);
//creamos la instancia
var obj_Clase = Activator.CreateInstance(m_type);
//Cargamos el metodo solicitado
MethodInfo obj_MethodInfo = obj_Clase.GetType().GetMethod(Variables.G_STR_LIBRERIA_OPCIONES_PROCEDIMIENTO_CARGAR_LISTADO, BindingFlags.Instance | BindingFlags.NonPublic);
//Obtener valores
object[] arr_Parametros = { str_Opcion, false, 0, null, Variables.G_MDL_INTERNO_VALORESGENERALES_MODELO, Variables.G_DTT_FECHA_INICIAL_PORDEFECTO, "", "", false, false, null, null, null,null,null,null };
//Pasamos los parametros al metodo y lo ejecutamos
obj_MethodInfo.Invoke(obj_Clase, arr_Parametros);
}
private void btn_Abrir_Mantenimiento_Click(object sender, EventArgs e)
{
string str_NombreLibreria = txt_Mantenimiento_Libreria.Text;
string str_Opcion = cbo_Mantenimiento_Listado.Text;
INTERNO_OpcionesDetalle_Modelo mdl_INTERNO_OpcionesDetalle_Modelo = Datos_Generales.PRV_Opciones_Buscar_Detalles(str_Opcion);
//Cargamos el ensamblado
Assembly m_assembly = Assembly.LoadFrom(Variables.G_STR_LIBRERIA_RUTAINICIAL + @"\" + str_NombreLibreria + ".dll");
//Obtenemos el tipo de la clase
Type m_type = m_assembly.GetType(str_NombreLibreria + "." + Variables.G_STR_LIBRERIA_OPCIONES);
//creamos la instancia
var obj_Clase = Activator.CreateInstance(m_type);
//Cargamos el metodo solicitado
MethodInfo obj_MethodInfo = obj_Clase.GetType().GetMethod(Variables.G_STR_LIBRERIA_OPCIONES_PROCEDIMIENTO_MOSTRAR_EN_MANTENIMIENTO, BindingFlags.Instance | BindingFlags.NonPublic);
object[] arr_Parametros = { str_Opcion,
null,
null,
Variables.G_MDL_INTERNO_VALORESGENERALES_MODELO,
Variables.G_DTT_FECHA_INICIAL_PORDEFECTO,
mdl_INTERNO_OpcionesDetalle_Modelo,
102638,
"",
"" ,
null,
null};
//Pasamos los parametros al metodo y lo ejecutamos
obj_MethodInfo.Invoke(obj_Clase, arr_Parametros);
}
private void btn_CodigoPrueba_Click(object sender, EventArgs e)
{
//ImprimirAlbaran();
ImprimirInformePedido();
/*
#region Empresa
GEN_Empresas mdl_GEN_Empresas = new GEN_Empresas();
mdl_GEN_Empresas.id = 65;
mdl_GEN_Empresas.razonSocial = "Exferia Soluciones SL";
mdl_GEN_Empresas.nif = "B54784154";
GEN_Provincias mdl_GEN_Provincias = new GEN_Provincias();
mdl_GEN_Provincias.id = 1;
mdl_GEN_Provincias.descripcion = "Santa Cruz de Tenerife";
GEN_Municipios mdl_GEN_Municipios = new GEN_Municipios();
mdl_GEN_Municipios.id = 1;
mdl_GEN_Municipios.descripcion = "Santa Ursula";
GEN_Direcciones mdl_GEN_Direcciones = new GEN_Direcciones();
mdl_GEN_Direcciones.codigoPostal = "38390";
mdl_GEN_Direcciones.nombreVia = "Carretera Vieja,59";
mdl_GEN_Direcciones.GEN_Provincias = mdl_GEN_Provincias;
mdl_GEN_Direcciones.GEN_Municipios = mdl_GEN_Municipios;
mdl_GEN_Direcciones.tipoDireccion=Variables.G_STR_TIPODIRECCION_FACTURACION;
mdl_GEN_Direcciones.GEN_Paises = null;
mdl_GEN_Direcciones.GEN_Poblaciones = null;
mdl_GEN_Direcciones.idEmpresa=65;
mdl_GEN_Empresas.GEN_Direcciones = new List<GEN_Direcciones>();
mdl_GEN_Empresas.GEN_Direcciones.Add(mdl_GEN_Direcciones);
#endregion
#region Lineas
List<INTERNO_InformeOficial_LibroDiario_Modelo> lst_INTERNO_InformeOficial_LibroDiario_Modelo = new List<INTERNO_InformeOficial_LibroDiario_Modelo>();
long lng_NumeroAsiento = 999999999;
int int_Contador_NumeroASiento = 0;
bool bol_Debe = false;
for (int int_Cotnador=0; int_Cotnador<100; int_Cotnador++)
{
INTERNO_InformeOficial_LibroDiario_Modelo mdl_INTERNO_InformeOficial_LibroDiario_Modelo = new INTERNO_InformeOficial_LibroDiario_Modelo();
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.concepto="prueba " + int_Cotnador;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.cuentaCodigo = "999999998";
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.cuentaDescripcion="Cuenta " + int_Cotnador;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.fecha=DateTime.Now;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.importeDebe= bol_Debe ? 12.3m : 0m;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.importeHaber= bol_Debe==false ? 12.3m : 0m;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.linea= int_Cotnador;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.numeroAsiento= lng_NumeroAsiento;
mdl_INTERNO_InformeOficial_LibroDiario_Modelo.orden=0;
lst_INTERNO_InformeOficial_LibroDiario_Modelo.Add(mdl_INTERNO_InformeOficial_LibroDiario_Modelo);
if (bol_Debe)
{
bol_Debe = false;
}
else
{
bol_Debe = true;
}
if (int_Contador_NumeroASiento==10)
{
lng_NumeroAsiento += 999999;
int_Contador_NumeroASiento = 0;
}
int_Contador_NumeroASiento += 1;
}
#endregion
PI_InformeOficial_LibroDiario frm_PI_InformeOficial_LibroDiario = new PI_InformeOficial_LibroDiario(1,
mdl_GEN_Empresas,
null,
DateTime.Now,
"LibroDiario",
false,
0,
0,
null,
null,
new DateTime(2016,1,1),
new DateTime(2016, 12, 31),
null,
null,
"",
"",
0,
lst_INTERNO_InformeOficial_LibroDiario_Modelo);
frm_PI_InformeOficial_LibroDiario.ShowDialog();*/
}
private void ImprimirInformePedido()
{
INTERNO_Informes_Compras_Pedido _mdl_INTERNO_Informes_Compras_Pedido = new INTERNO_Informes_Compras_Pedido();
PI_Informe_PedidoCompra frm_PI_Informe_Pedido = new PI_Informe_PedidoCompra(_mdl_INTERNO_Informes_Compras_Pedido);
frm_PI_Informe_Pedido.Show();
}
private void ImprimirAlbaran()
{
INTERNO_Informes_Ventas_Albaran mdl_INTERNO_Informes_Ventas_Albaran = new INTERNO_Informes_Ventas_Albaran();
mdl_INTERNO_Informes_Ventas_Albaran.numero = "7";
mdl_INTERNO_Informes_Ventas_Albaran.fecha = "09/08/2022";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1 = new INTERNO_Informes_Ventas_Anexo_1();
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.referenciaCliente = "";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.tipoPortes = "Pagados";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Pais = "ESPAÑA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_CodigoPostal = "37210";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Remitente = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Provincia = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Municipio = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Poblacion = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.origen_Direccion = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Pais = "ESPAÑA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_CodigoPostal = "37700";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Destinatario = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Provincia = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Municipio = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Poblacion = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.destino_Direccion = "SALAMANCA";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.soporte = "MINIQUARTER";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.cantidad = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.observaciones = "";
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.reembolso = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.reembolsoImporte = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.portes = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.desembolso = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.seguroImporte = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.impuesto_porcentaje = 21.00m;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.impuesto_importe = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.total = null;
mdl_INTERNO_Informes_Ventas_Albaran.Anexo_1.tipotransporte = "SECO";
PI_Informe_Albaran frm_ = new PI_Informe_Albaran(mdl_INTERNO_Informes_Ventas_Albaran, 110);
frm_.Show();
}
private void CrearXML()
{
FileStream fls_CrearFichero = null;
try
{
//Creamos el fichero
fls_CrearFichero = new FileStream(g_str_RUTA, FileMode.Create);
fls_CrearFichero.Close();
//Ahora crearemos la estructura del XML
XmlDocument Documento = new XmlDocument();
XmlNode xn_Declaration = Documento.CreateXmlDeclaration("1.0", "UTF-8", "yes");
Documento.AppendChild(xn_Declaration);
//Nodo Padre
XmlNode xn_NodoPrincipal = Documento.CreateElement("Datos");
Documento.AppendChild(xn_NodoPrincipal);
//Nodos Hijos
XmlNode xn_Servidor = Documento.CreateElement("servidor");
XmlNode xn_BaseDatos = Documento.CreateElement("basedatos");
XmlNode xn_Usuario = Documento.CreateElement("usuario");
XmlNode xn_Clave = Documento.CreateElement("clave");
XmlNode xn_Perfil = Documento.CreateElement("idusuario");
xn_NodoPrincipal.AppendChild(xn_Servidor);
xn_NodoPrincipal.AppendChild(xn_BaseDatos);
xn_NodoPrincipal.AppendChild(xn_Usuario);
xn_NodoPrincipal.AppendChild(xn_Clave);
xn_NodoPrincipal.AppendChild(xn_Perfil);
Documento.Save(g_str_RUTA);
AbrirPantallaConexion();
}
catch (Exception)
{
}
}
private void Cargar_ValoresXML()
{
XmlDocument Documento = new XmlDocument();
Documento.Load(g_str_RUTA);
//Nodo principal
XmlNode obj_NodoPadre = Documento.GetElementsByTagName("Datos")[0];
Variables.G_STR_CONEXION_SERVIDOR = obj_NodoPadre["servidor"].InnerText;
Variables.G_STR_CONEXION_BASEDATOS = obj_NodoPadre["basedatos"].InnerText;
Variables.G_STR_CONEXION_USUARIO = obj_NodoPadre["usuario"].InnerText;
Variables.G_STR_CONEXION_CLAVE = obj_NodoPadre["clave"].InnerText;
g_str_idUsuario = obj_NodoPadre["idusuario"].InnerText;
if (Variables.G_STR_CONEXION_SERVIDOR.Equals("") || g_str_idUsuario.Equals(""))
{
AbrirPantallaConexion();
}
}
private void btn_CambiarConexion_Click(object sender, EventArgs e)
{
AbrirPantallaConexion();
}
private void AbrirPantallaConexion()
{
Form2 frm_Conexion = new Form2(Variables.G_STR_CONEXION_SERVIDOR, Variables.G_STR_CONEXION_BASEDATOS, Variables.G_STR_CONEXION_USUARIO, Variables.G_STR_CONEXION_CLAVE, g_str_idUsuario);
frm_Conexion.StartPosition = FormStartPosition.CenterParent;
frm_Conexion.ShowDialog();
}
}
}