This commit is contained in:
rrene
2020-08-21 11:46:07 -07:00
35 changed files with 2342 additions and 1021 deletions

82
AF/CatActividades.aspx Normal file
View File

@@ -0,0 +1,82 @@
<%@ Page Title="AF - Catálogo de Actividades" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="CatActividades.aspx.cs" Inherits="AF_CatActividades" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Actividadedes
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarActividadD" OnClick="BtnAgregarActividadD_Click" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Actividad"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveActividad, Nombre, CvePuesto, Cantidad, CveUsuario, CveEmpresa" EmptyDataText="No se encontraron Tipo Gasto" ToolTip="Listado de Tipo Gasto " CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; width: 100%" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Nombre" DataField="Nombre" />
<asp:TemplateField ItemStyle-Width="13%" ItemStyle-HorizontalAlign="Center" HeaderStyle-HorizontalAlign="Left" HeaderText="Editar">
<ItemTemplate>
<asp:LinkButton ID="LnkEditar" OnClick="LnkEditar_Click" runat="server" Visible="true" AlternateText="Subir" CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i title='Editar' class='fa fa-pencil' title='Editar' ></i>" />
<asp:LinkButton ID="LnkEliminar" OnClick="LnkEliminar_Click" runat="server" Visible="true" AlternateText="Reasignar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i title='Reasignar' class='icon-trash' title='Eliminar' ></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivAgregarActividadD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Tipo de Servicio</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNombre" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtNombre" runat="server" ControlToValidate="TxtNombre" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TxtNombre">Nombre:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlPuesto" DataTextField="Puesto" DataValueField="CvePuesto" CausesValidation="true" runat="server" Width="100%" AppendDataBoundItems="true" CssClass="form-control input-sm select2me"></asp:DropDownList>
<label for="<%= DdlPuesto.ClientID.ToString()%>">Puesto:</label>
<asp:RequiredFieldValidator ID="RfvPuesto" CssClass="help-block errorimput" runat="server" ControlToValidate="DdlPuesto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Puesto''</b> es necesario." InitialValue="-1" ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
</div>
<br />
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCantidad" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvCantidad" runat="server" ControlToValidate="TxtCantidad" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TxtCantidad">Cantidad:</label>
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarActividad" OnClick="BtnAgregarActividad_Click" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

110
AF/CatActividades.aspx.cs Normal file
View File

@@ -0,0 +1,110 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
public partial class AF_CatActividades : ClsPaginas
{
private int CveActividad
{
get
{
return ViewState["CveActividad"].ToString().ToEntero();
}
set
{
ViewState["CveActividad"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
}
}
private void CargaDatos()
{
ClsAF ObjAF = new ClsAF();
if (ObjAF.GetActividades(-1, -1, -1, UsuarioActual.CveEmpresa))
{
GvDatos.DataSource = ObjAF.DtResultados;
GvDatos.DataBind();
}
DdlPuesto.DataSource = get_GlobalDTRHPuestos(UsuarioActual.CveEmpresa);
DdlPuesto.DataBind();
DdlPuesto.Items.Insert(0,new ListItem("-1","Seleccione"));
ObjAF.Dispose();
}
protected void BtnAgregarActividadD_Click(object sender, EventArgs e)
{
BtnAgregarActividad.Text = "Agregar";
TxtNombre.Text = "";
DdlPuesto.SelectedValueExist(-1);
TxtCantidad.Text = "";
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarActividadD"));
}
protected void LnkEditar_Click(object sender, EventArgs e)
{
BtnAgregarActividad.Text = "Actualizar";
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveActividad = GvRow.DataKey("CveActividad").ToEntero();
TxtNombre.Text = GvRow.DataKey("Nombre");
DdlPuesto.SelectedValueExist(GvRow.DataKey("CvePuesto"));
TxtCantidad.Text = GvRow.DataKey("Cantidad");
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarActividadD"));
}
protected void LnkEliminar_Click(object sender, EventArgs e)
{
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveActividad = GvRow.DataKey("CveActividad").ToEntero();
ClsAF ObjAF = new ClsAF();
if (ObjAF.DeleteActividades(CveActividad))
{
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarActividadD"));
Alert("Se eliminó la Actividad correctamente");
}
ObjAF.Dispose();
}
protected void BtnAgregarActividad_Click(object sender, EventArgs e)
{
ClsAF ObjAF = new ClsAF();
if (BtnAgregarActividad.Text == "Agregar")
{
if (ObjAF.AddActividades(TxtNombre.Text, DdlPuesto.SelectedValue.ToEntero(),TxtCantidad.Text.ToDecimal(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
{
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarActividadD"));
Alert("Se agregó la Actividad correctamente");
}
}
else
{
if (ObjAF.UpdateActividades(CveActividad,TxtNombre.Text, DdlPuesto.SelectedValue.ToEntero(), TxtCantidad.Text.ToDecimal(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
{
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarActividadD"));
Alert("Se actualizó la Actividad correctamente");
}
}
ObjAF.Dispose();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarActividadD"));
}
}

View File

@@ -0,0 +1,70 @@
<%@ Page Title="AF - Catálogo de Grupos de CheckLists" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="CatCheckListActividadesGrupos.aspx.cs" Inherits="AF_CatCheckListActividadesGrupos" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Grupos de CheckLists
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarGrupoCheckListD" OnClick="BtnAgregarGrupoCheckListD_Click" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Grupo CheckList"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCheckListActividadGrupo, CheckListActividadGrupo" EmptyDataText="No se encontraron Tipo Gasto" ToolTip="Listado de Tipo Gasto " CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; width: 100%" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Grupo de CheckList" DataField="CheckListActividadGrupo" />
<asp:TemplateField ItemStyle-Width="13%" ItemStyle-HorizontalAlign="Center" HeaderStyle-HorizontalAlign="Left" HeaderText="Editar">
<ItemTemplate>
<asp:LinkButton ID="LnkEditar" OnClick="LnkEditar_Click" runat="server" Visible="true" AlternateText="Subir" CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i title='Editar' class='fa fa-pencil' title='Editar' ></i>" />
<asp:LinkButton ID="LnkEliminar" OnClick="LnkEliminar_Click" runat="server" Visible="true" AlternateText="Reasignar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i title='Reasignar' class='icon-trash' title='Eliminar' ></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivAgregarGrupoCheckListD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Grupo de CheckList</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtGrupoCheckList" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtGrupoCheckList" runat="server" ControlToValidate="TxtGrupoCheckList" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Grupo CheckList''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="LblNombre">Nombre:</label>
<i></i>
</div>
<br />
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarGrupoCheckList" OnClick="BtnAgregarGrupoCheckList_Click" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,100 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
public partial class AF_CatCheckListActividadesGrupos : ClsPaginas
{
private int CveCheckListActividadGrupo
{
get
{
return ViewState["CveCheckListActividadGrupo"].ToString().ToEntero();
}
set
{
ViewState["CveCheckListActividadGrupo"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
}
}
private void CargaDatos()
{
ClsAF ObjAF = new ClsAF();
if (ObjAF.GetCheckListActividadGrupo(-1))
{
GvDatos.DataSource = ObjAF.DtResultados;
GvDatos.DataBind();
}
ObjAF.Dispose();
}
protected void BtnAgregarGrupoCheckListD_Click(object sender, EventArgs e)
{
BtnAgregarGrupoCheckList.Text = "Agregar";
TxtGrupoCheckList.Text = "";
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGrupoCheckListD"));
}
protected void LnkEditar_Click(object sender, EventArgs e)
{
BtnAgregarGrupoCheckList.Text = "Actualizar";
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveCheckListActividadGrupo = GvRow.DataKey("CveCheckListActividadGrupo").ToEntero();
TxtGrupoCheckList.Text = GvRow.DataKey("CheckListActividadGrupo");
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGrupoCheckListD"));
}
protected void LnkEliminar_Click(object sender, EventArgs e)
{
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveCheckListActividadGrupo = GvRow.DataKey("CveCheckListActividadGrupo").ToEntero();
ClsAF ObjAF = new ClsAF();
if (ObjAF.DeleteCheckListActividadGrupo(CveCheckListActividadGrupo))
{
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGrupoCheckListD"));
Alert("Se eliminó el Grupo de CheckList correctamente");
}
ObjAF.Dispose();
}
protected void BtnAgregarGrupoCheckList_Click(object sender, EventArgs e)
{
ClsAF ObjAF = new ClsAF();
if (BtnAgregarGrupoCheckList.Text == "Agregar")
{
if (ObjAF.AddCheckListActividadGrupo(TxtGrupoCheckList.Text))
{
Alert("Se agregó el Grupo de CheckList correctamente");
}
}
else
{
if (ObjAF.UpdateCheckListActividadGrupo(CveCheckListActividadGrupo, TxtGrupoCheckList.Text))
{
Alert("Se actualizó el Grupo de CheckList correctamente");
}
}
ObjAF.Dispose();
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGrupoCheckListD"));
}
}

70
AF/CatCheckListTipo.aspx Normal file
View File

@@ -0,0 +1,70 @@
<%@ Page Title="AF - Catálogo de Tipos de CheckLists" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="CatCheckListTipo.aspx.cs" Inherits="AF_CatCheckListTipo" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Tipos de CheckLists
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarTipoCheckListD" OnClick="BtnAgregarTipoCheckListD_Click" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Tipo CheckList"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCheckListTipo, CheckListTipo" EmptyDataText="No se encontraron Tipo Gasto" ToolTip="Listado de Tipo Gasto " CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; width: 100%" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Tipos de CheckList" DataField="CheckListTipo" />
<asp:TemplateField ItemStyle-Width="13%" ItemStyle-HorizontalAlign="Center" HeaderStyle-HorizontalAlign="Left" HeaderText="Editar">
<ItemTemplate>
<asp:LinkButton ID="LnkEditar" OnClick="LnkEditar_Click" runat="server" Visible="true" AlternateText="Subir" CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i title='Editar' class='fa fa-pencil' title='Editar' ></i>" />
<asp:LinkButton ID="LnkEliminar" OnClick="LnkEliminar_Click" runat="server" Visible="true" AlternateText="Reasignar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i title='Reasignar' class='icon-trash' title='Eliminar' ></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivAgregarGrupoCheckListD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Grupo de CheckList</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTipoCheckList" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTipoCheckList" runat="server" ControlToValidate="TxtTipoCheckList" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Grupo CheckList''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TxtTipoCheckList">Tipo:</label>
<i></i>
</div>
<br />
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTipoCheckList" OnClick="BtnAgregarTipoCheckList_Click" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

100
AF/CatCheckListTipo.aspx.cs Normal file
View File

@@ -0,0 +1,100 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
public partial class AF_CatCheckListTipo : ClsPaginas
{
private int CveCheckListTipo
{
get
{
return ViewState["CveCheckListTipo"].ToString().ToEntero();
}
set
{
ViewState["CveCheckListTipo"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
}
}
private void CargaDatos()
{
ClsAF ObjAF = new ClsAF();
if (ObjAF.GetCheckListTipo(-1))
{
GvDatos.DataSource = ObjAF.DtResultados;
GvDatos.DataBind();
}
ObjAF.Dispose();
}
protected void BtnAgregarTipoCheckListD_Click(object sender, EventArgs e)
{
BtnAgregarTipoCheckList.Text = "Agregar";
TxtTipoCheckList.Text = "";
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGrupoCheckListD"));
}
protected void LnkEditar_Click(object sender, EventArgs e)
{
BtnAgregarTipoCheckList.Text = "Actualizar";
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveCheckListTipo = GvRow.DataKey("CveCheckListTipo").ToEntero();
TxtTipoCheckList.Text = GvRow.DataKey("CheckListTipo");
UpModalTiposD.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGrupoCheckListD"));
}
protected void LnkEliminar_Click(object sender, EventArgs e)
{
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveCheckListTipo = GvRow.DataKey("CveCheckListTipo").ToEntero();
ClsAF ObjAF = new ClsAF();
if (ObjAF.DeleteCheckListTipo(CveCheckListTipo))
{
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGrupoCheckListD"));
Alert("Se eliminó el Grupo de CheckList correctamente");
}
ObjAF.Dispose();
}
protected void BtnAgregarTipoCheckList_Click(object sender, EventArgs e)
{
ClsAF ObjAF = new ClsAF();
if (BtnAgregarTipoCheckList.Text == "Agregar")
{
if (ObjAF.AddCheckListTipo(TxtTipoCheckList.Text))
{
Alert("Se agregó el Tipo de CheckList correctamente");
}
}
else
{
if (ObjAF.UpdateCheckListTipo(CveCheckListTipo, TxtTipoCheckList.Text))
{
Alert("Se actualizó el Tipo de CheckList correctamente");
}
}
ObjAF.Dispose();
CargaDatos();
UpDatos.Update();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGrupoCheckListD"));
}
}

View File

@@ -1,437 +0,0 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.IO
Imports Extensiones
Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Partial Class AF_OrdenServicio
Inherits ClsPaginas
#Region " PROPIEDADES"
Property DT_Cabeceras As DataTable
Get
If ViewState("DT_Cabeceras") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DT_Cabeceras"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DT_Cabeceras") = value
End Set
End Property
Property DT_Datos As DataTable
Get
If ViewState("DT_Datos") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DT_Datos"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DT_Datos") = value
End Set
End Property
Property ReporteBytes As Byte()
Get
If ViewState("ReporteBytes") Is Nothing Then
Return Nothing
Else
Return DirectCast(ViewState("ReporteBytes"), Byte())
End If
End Get
Set(value As Byte())
ViewState("ReporteBytes") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaCombos()
'CargaDatos()
TxtFecha.Text = $"{Now.Day.ToString("00")}/{Now.Month.ToString("00")}/{Now.Year}"
End If
End Sub
#Region " CARGA PARAMETROS "
#End Region
#Region " CARGA COMBOS "
Protected Sub CargaCombos()
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto)
LblSubProyecto2.Text = LblSubProyecto.Text
End Sub
#End Region
#Region " CARGA DATOS "
'Protected Sub BtnFiltrar_Click(sender As Object, e As EventArgs)
' CargaDatos()
'End Sub
#End Region
#Region " GV DATOS "
Private Sub CargaDatos()
Dim ObjAF As New ClsAF
If ObjAF.GetMetricasRegistro(DdlSubProyecto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, TxtFecha.Text.ToDate) Then
DT_Cabeceras = ObjAF.DSResultados.Tables(0)
DT_Datos = ObjAF.DSResultados.Tables(1)
If DT_Cabeceras.Rows.Count > 0 AndAlso DT_Datos.Rows.Count > 0 Then
BtnGuardar.Visible = True
Else
BtnGuardar.Visible = False
GvDatos.DataSource = Nothing
GvDatos.DataBind()
End If
Else
GvDatos.DataSource = Nothing
GvDatos.DataBind()
BtnGuardar.Visible = False
End If
ObjAF.Dispose()
If DT_Datos.Rows.Count > 0 Then
CargaTablas()
End If
UpGuardar.Update()
UpDatos.Update()
End Sub
Private Sub CargaTablas()
Dim IDX_LIMPIAR As Integer = 1
For IDX_LIMPIAR = 1 To 15
GvDatos.Columns(IDX_LIMPIAR).HeaderText = ""
GvDatos.Columns(IDX_LIMPIAR).Visible = False
Next
Dim x As Integer = 0
Dim limite As Integer = DT_Cabeceras.Rows.Count - 1
For x = 0 To limite
GvDatos.Columns(x + 1).HeaderText = DT_Cabeceras.Rows(x)("Metrica").ToString
GvDatos.Columns(x + 1).Visible = True
Next x
GvDatos.DataSource = DT_Datos
GvDatos.DataBind()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCDropDownList("DdlPersonal").DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("CveEstatusPersonal = 1")
e.Row.FCDropDownList("DdlPersonal").DataBind()
e.Row.FCDropDownList("DdlPersonal").Items.Insert(0, New ListItem("Selecione uno", "-1"))
e.Row.FCDropDownList("DdlPersonal").SelectedValueExist(e.Row.DataKey("CvePersonaResponsable"))
End If
End Sub
#End Region
Protected Sub LnkEliminarMetricaValor_Click(sender As Object, e As EventArgs)
End Sub
Protected Sub DdlSubProyecto_SelectedIndexChanged(sender As Object, e As EventArgs)
If DdlSubProyecto.SelectedValue.ToEntero > 0 Then
CargaDatos()
Else
GvDatos.DataSource = Nothing
GvDatos.DataBind()
UpDatos.Update()
End If
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
Dim ObjAF As New ClsAF
Dim limite As Integer = DT_Cabeceras.Rows.Count - 1
ObjAF.IniciaTransacSQL()
Dim ErrorProceso As Boolean = False
For Each GvRow As GridViewRow In GvDatos.Rows
If GvRow.RowType = DataControlRowType.DataRow Then
Dim DdlPersonal As DropDownList = GvRow.FCDropDownList("DdlPersonal")
If DdlPersonal.SelectedValue.ToEntero <= 0 Then
Alert($"unidad: {GvRow.DataKey("Unidad")} require personal", TipoMensaje.MsgAdvertencia)
ErrorProceso = True
Exit For
End If
If ObjAF.AddMetricasValores(GvRow.DataKey("CveActivoFijo").ToEntero, DdlPersonal.SelectedValue.ToEntero, UsuarioActual.CveUsuario, DdlSubProyecto.SelectedValue.ToEntero, TxtFecha.Text.ToDate, UsuarioActual.CveEmpresa) Then
Dim CveMetricaValor As Integer = ObjAF.CveMetricaValor
Dim x As Integer = 0
For x = 0 To limite
Dim valor As Decimal = GvRow.FCTextBox($"TxtMetrica{x + 1}").Text.ToDecimal
' valor = If(valor.Trim.Length = 0, "0", valor)
If ObjAF.AddMetricasValoresDetalle(CveMetricaValor, DT_Cabeceras(x)("CveMetrica").ToString.ToEntero, valor) Then
ErrorProceso = False
Else
ErrorProceso = True
Exit For
End If
Next x
If ErrorProceso Then
Exit For
End If
Else
ErrorProceso = True
Exit For
End If
End If
Next
If Not ErrorProceso Then
ObjAF.Commit()
ExportToExcelG(GvDatos, $"RegistroRevision{Now.ToString("yyyyMMddmmss")}", UsuarioActual, "ReporteRevision", 100, 100, filtros:=$"Filtros {LblSubProyecto.Text}: {DdlSubProyecto.SelectedItem.Text} Fecha: {TxtFecha.Text}")
RegistraScript("$('#ModalDescargaReporte').modal({ backdrop: 'static', keyboard: false });")
GvDatos.DataSource = Nothing
GvDatos.DataBind()
BtnGuardar.Visible = False
UpDatos.Update()
UpGuardar.Update()
Else
ObjAF.RollBack()
End If
ObjAF.Dispose()
End Sub
#Region "DESCARGA EXCEL"
Public Sub ExportToExcelG(Gv1 As GridView, NombreArchivoXLSx As String, Usuario As Usuario, Titulo As String, Optional AlturaImagen As Double = 100, Optional AnchoImagen As Double = 100, Optional filtros As String = "")
For Each GvRow As GridViewRow In Gv1.Rows
Dim IDX_LIMPIAR As Integer = 1
For IDX_LIMPIAR = 1 To 15
GvRow.Cells(IDX_LIMPIAR).Text = GvRow.FCTextBox($"TxtMetrica{IDX_LIMPIAR}").Text
Next
If GvRow.FCDropDownList("DDLPersonal").SelectedValue.ToEntero > 0 Then
GvRow.Cells(16).Text = GvRow.FCDropDownList("DDLPersonal").SelectedItem.Text
Else
GvRow.Cells(16).Text = ""
End If
Next
Dim sw1 As New StringWriter()
Dim htw1 As New HtmlTextWriter(sw1)
Gv1.RenderControl(htw1)
Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
Dim htmlStream1 = New MemoryStream(options.Encoding.GetBytes(sw1.ToString()))
htmlStream1.Position = 0
Dim sr1 As New StreamReader(htmlStream1)
Dim myStr1 = sr1.ReadToEnd()
sr1.Dispose()
htmlStream1.Dispose()
sw1.Dispose()
Dim HtmlCompleto As String = myStr1
HtmlCompleto = Regex.Replace(HtmlCompleto, "\<[\/]*a[^\>]*\>", "")
Dim asd As String = ""
Dim htmlStream5 = New MemoryStream(options.Encoding.GetBytes(HtmlCompleto))
GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet())
Dim excel As GemBox.Spreadsheet.ExcelFile
excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream5, options)
If Usuario IsNot Nothing Then
Dim TotalRowHeader As Integer = 8
Dim TotalRowFooter As Integer = 2
Dim worksheet = excel.Worksheets(0)
worksheet.Rows.InsertEmpty(0, TotalRowHeader)
Dim celdasConTexto = worksheet.GetUsedCellRange(True)
celdasConTexto.Style.Font.Name = "Calibri Light"
Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
RangoNombreEmpresa.Merged = True
RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
RangoNombreEmpresa.Style.Font.Size = 18 * 20
RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
Dim RangoFiltros = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex)
RangoFiltros.Merged = True
RangoFiltros.Value = filtros
RangoFiltros.Style.Font.Size = 15 * 20
RangoFiltros.Style.Font.Name = "Calibri Light"
RangoFiltros.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
RangoFiltros.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
RangoTitulo.Merged = True
RangoTitulo.Value = Titulo
RangoTitulo.Style.Font.Size = 20 * 20
RangoTitulo.Style.Font.Name = "Calibri Light"
RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20
worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
If i > 0 Then
Try
worksheet.Columns(i).AutoFit(1)
Catch ex As Exception
End Try
End If
Next
Dim IndexEndTable As Integer = Gv1.Rows.Count + 4 + TotalRowHeader + TotalRowFooter
worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió"
worksheet.Rows(IndexEndTable + 1).Cells(0).Value = Usuario.Nombre
worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión"
worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy")
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
If Imagen.Exists Then
Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
Using sr As New StreamReader(Ruta)
Dim ms As New MemoryStream()
sr.BaseStream.CopyTo(ms)
worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
End Using
End If
End If
Dim memoryStream As New MemoryStream()
excel.Save(memoryStream, SaveOptions.XlsxDefault)
ReporteBytes = memoryStream.ToArray()
memoryStream.Dispose()
End Sub
Protected Sub LnkDescargaReporte_Click(sender As Object, e As EventArgs)
Response.ContentType = "application/force-download"
Response.AppendHeader("Content-Disposition", $"attachment;filename=RegistroRevision{Now.ToString("yyyyMMddmmss")}.xlsx")
Response.BinaryWrite(ReporteBytes)
Response.End()
End Sub
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub
#End Region
End Class

View File

@@ -1,4 +1,4 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="OrdenServicio.aspx.vb" Inherits="AF_OrdenServicio" EnableEventValidation = "false" %> <%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="OrdenTrabajo.aspx.vb" Inherits="AF_OrdenTrabajo" EnableEventValidation = "false" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server"> <asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content> </asp:Content>
@@ -74,33 +74,31 @@
<div class="portlet-body form"> <div class="portlet-body form">
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSubProyecto" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" AutoPostBack="true" OnSelectedIndexChanged="DdlSubProyecto_SelectedIndexChanged"></asp:DropDownList> <asp:DropDownList ID="DdlTipoServicio" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="Nombre" DataValueField="CveTipoServicio" ></asp:DropDownList>
<label for="<%= DdlSubProyecto.ClientID.ToString()%>"> <label for="<%= DdlTipoServicio.ClientID.ToString()%>">
<asp:Label runat="server" ID="LblSubProyecto"></asp:Label> <asp:Label runat="server" ID="LblTipo" Text="Tipo"></asp:Label>
</label> </label>
<i></i> <i></i>
<asp:RequiredFieldValidator ID="RFVDdlSubProyecto" runat="server" InitialValue="-1" ControlToValidate="DdlSubProyecto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio Contrato''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVDdlTipoServicio" runat="server" InitialValue="-1" ControlToValidate="DdlTipoServicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo servicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtFecha.ClientID.ToString()%>">Fecha Inicio Contrato: </label> <asp:TextBox CssClass="form-control" ID="TxtDescripcion" runat="server" MaxLength="30"></asp:TextBox>
<div class="input-group input-sm date date-picker" data-date-format="dd/mm/yyyy" style="padding: 5px 0px;"> <asp:Label AssociatedControlID="TxtDescripcion" runat="server" Text="Descripción:"></asp:Label>
<asp:TextBox ID="TxtFecha" runat="server" CausesValidation="True" CssClass="form-control input-sm"></asp:TextBox> <asp:RequiredFieldValidator ID="RFVTxtDescripcion" runat="server" ControlToValidate="TxtDescripcion" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<span class="input-group-btn "> <i></i>
<asp:LinkButton ID="ImgFechaInicioContrato" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaInicioContrato" runat="server" TargetControlID="TxtFecha" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" BehaviorID="_content_MEEFechaInicioContrato" Century="2000" CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaInicioContrato" TargetControlID="TxtFecha" PopupButtonID="ImgFechaInicioContrato" PopupPosition="BottomRight" BehaviorID="_content_CEFechaInicioContrato"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaInicioContrato" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio Contrato''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaInicioContrato" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio Contrato''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
</div> </div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtDuracion" runat="server" MaxLength="30"></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtDuracion" FilterType="Numbers,Custom" InvalidChars="-*+" ValidChars="1234567890." />
<asp:Label AssociatedControlID="TxtDuracion" runat="server" Text="Duración:"></asp:Label>
<asp:RequiredFieldValidator ID="RFVTxtDuracion" runat="server" ControlToValidate="TxtDuracion" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Duración''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<i></i>
</div>
</div> </div>
@@ -112,43 +110,7 @@
<%-- <div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT portletfiltrostitlee">
<div class="tools">
<asp:UpdatePanel runat="server" style="display: inline-block;">
<ContentTemplate>
<asp:Button ID="BtnFiltrar" runat="server" Text="Consultar" class="btn btn-primary" OnClick="BtnFiltrar_Click" />
</ContentTemplate>
</asp:UpdatePanel>
<a href="javascript:;" class="expand" data-original-title="" title=""></a>
</div>
<div class="titlefiltros caption">
<div class="row">
<div class="col-md-1"></div>
<div class="col-md-2">
</div>
<div class="col-md-1">Fecha:</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
<div class="portlet-body" style="display: none;">
</div>
</div>--%>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
@@ -162,12 +124,7 @@
GridLines="None"> GridLines="None">
<Columns> <Columns>
<%--<asp:TemplateField HeaderText="SubProyecto" >
<ItemStyle Width="140px" />
<ItemTemplate>
<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# Eval("SubProyecto")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Unidad"> <asp:TemplateField HeaderText="Unidad">
<ItemStyle Width="350px" /> <ItemStyle Width="350px" />
<ItemTemplate> <ItemTemplate>
@@ -339,14 +296,14 @@
<div class="col-md-12"> <div class="col-md-12">
<p>Metricas guardadas correctamente.</p> <p>Metricas guardadas correctamente.</p>
<asp:LinkButton ID="LnkDescargaReporte" runat="server" OnClick="LnkDescargaReporte_Click"> <%-- <asp:LinkButton ID="LnkDescargaReporte" runat="server" OnClick="LnkDescargaReporte_Click">
<i class="fa fa-arrow-down" style="font-weight:bold;"></i> Descarga Reporte Excel</asp:LinkButton> <i class="fa fa-arrow-down" style="font-weight:bold;"></i> Descarga Reporte Excel</asp:LinkButton>--%>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
<Triggers> <Triggers>
<asp:PostBackTrigger ControlID="LnkDescargaReporte" /> <%-- <asp:PostBackTrigger ControlID="LnkDescargaReporte" />--%>
</Triggers> </Triggers>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>

285
AF/OrdenTrabajo.aspx.vb Normal file
View File

@@ -0,0 +1,285 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.IO
Imports Extensiones
Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Partial Class AF_OrdenTrabajo
Inherits ClsPaginas
#Region " PROPIEDADES"
Property CveOrdenTrabajo As Integer
Get
If ViewState("CveOrdenTrabajo") Is Nothing Then
Return -1
Else
Return ViewState("CveOrdenTrabajo").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveOrdenTrabajo") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If Request("CveOrdenTrabajo") IsNot Nothing Then
CveOrdenTrabajo = Request("CveOrdenTrabajo").ToEntero
End If
CargaCombos()
End If
End Sub
#Region " CARGA PARAMETROS "
#End Region
#Region " CARGA COMBOS "
Protected Sub CargaCombos()
Dim ObjAF As New ClsAF
If ObjAF.GetTiposServicios(-1, -1, -1, UsuarioActual.CveEmpresa) Then
DdlTipoServicio.DataSource = ObjAF.DtResultados
Else
DdlTipoServicio.DataSource = Nothing
End If
ObjAF.Dispose()
DdlTipoServicio.DataBind()
DdlTipoServicio.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
UpFiltro.Update()
End Sub
#End Region
#Region " CARGA DATOS "
'Protected Sub BtnFiltrar_Click(sender As Object, e As EventArgs)
' CargaDatos()
'End Sub
#End Region
#Region " GV DATOS "
Private Sub CargaDatos()
Dim ObjAF As New ClsAF
ObjAF.Dispose()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
End If
End Sub
#End Region
Protected Sub LnkEliminarMetricaValor_Click(sender As Object, e As EventArgs)
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
End Sub
#Region "DESCARGA EXCEL"
'Public Sub ExportToExcelG(Gv1 As GridView, NombreArchivoXLSx As String, Usuario As Usuario, Titulo As String, Optional AlturaImagen As Double = 100, Optional AnchoImagen As Double = 100, Optional filtros As String = "")
' For Each GvRow As GridViewRow In Gv1.Rows
' Dim IDX_LIMPIAR As Integer = 1
' For IDX_LIMPIAR = 1 To 15
' GvRow.Cells(IDX_LIMPIAR).Text = GvRow.FCTextBox($"TxtMetrica{IDX_LIMPIAR}").Text
' Next
' If GvRow.FCDropDownList("DDLPersonal").SelectedValue.ToEntero > 0 Then
' GvRow.Cells(16).Text = GvRow.FCDropDownList("DDLPersonal").SelectedItem.Text
' Else
' GvRow.Cells(16).Text = ""
' End If
' Next
' Dim sw1 As New StringWriter()
' Dim htw1 As New HtmlTextWriter(sw1)
' Gv1.RenderControl(htw1)
' Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
' Dim htmlStream1 = New MemoryStream(options.Encoding.GetBytes(sw1.ToString()))
' htmlStream1.Position = 0
' Dim sr1 As New StreamReader(htmlStream1)
' Dim myStr1 = sr1.ReadToEnd()
' sr1.Dispose()
' htmlStream1.Dispose()
' sw1.Dispose()
' Dim HtmlCompleto As String = myStr1
' HtmlCompleto = Regex.Replace(HtmlCompleto, "\<[\/]*a[^\>]*\>", "")
' Dim asd As String = ""
' Dim htmlStream5 = New MemoryStream(options.Encoding.GetBytes(HtmlCompleto))
' GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet())
' Dim excel As GemBox.Spreadsheet.ExcelFile
' excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream5, options)
' If Usuario IsNot Nothing Then
' Dim TotalRowHeader As Integer = 8
' Dim TotalRowFooter As Integer = 2
' Dim worksheet = excel.Worksheets(0)
' worksheet.Rows.InsertEmpty(0, TotalRowHeader)
' Dim celdasConTexto = worksheet.GetUsedCellRange(True)
' celdasConTexto.Style.Font.Name = "Calibri Light"
' Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
' RangoNombreEmpresa.Merged = True
' RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
' RangoNombreEmpresa.Style.Font.Size = 18 * 20
' RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
' RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' Dim RangoFiltros = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex)
' RangoFiltros.Merged = True
' RangoFiltros.Value = filtros
' RangoFiltros.Style.Font.Size = 15 * 20
' RangoFiltros.Style.Font.Name = "Calibri Light"
' RangoFiltros.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
' RangoFiltros.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
' RangoTitulo.Merged = True
' RangoTitulo.Value = Titulo
' RangoTitulo.Style.Font.Size = 20 * 20
' RangoTitulo.Style.Font.Name = "Calibri Light"
' RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
' worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20
' worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
' worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
' If i > 0 Then
' Try
' worksheet.Columns(i).AutoFit(1)
' Catch ex As Exception
' End Try
' End If
' Next
' Dim IndexEndTable As Integer = Gv1.Rows.Count + 4 + TotalRowHeader + TotalRowFooter
' worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió"
' worksheet.Rows(IndexEndTable + 1).Cells(0).Value = Usuario.Nombre
' worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión"
' worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy")
' Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
' If Imagen.Exists Then
' Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
' Using sr As New StreamReader(Ruta)
' Dim ms As New MemoryStream()
' sr.BaseStream.CopyTo(ms)
' worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
' End Using
' End If
' End If
' Dim memoryStream As New MemoryStream()
' excel.Save(memoryStream, SaveOptions.XlsxDefault)
' ReporteBytes = memoryStream.ToArray()
' memoryStream.Dispose()
'End Sub
'Protected Sub LnkDescargaReporte_Click(sender As Object, e As EventArgs)
' Response.ContentType = "application/force-download"
' Response.AppendHeader("Content-Disposition", $"attachment;filename=RegistroRevision{Now.ToString("yyyyMMddmmss")}.xlsx")
' Response.BinaryWrite(ReporteBytes)
' Response.End()
'End Sub
'Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
'End Sub
#End Region
End Class

285
AF/TipoOrdenTrabajo.aspx Normal file
View File

@@ -0,0 +1,285 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="TipoOrdenTrabajo.aspx.vb" Inherits="AF_TipoOrdenTrabajo" EnableEventValidation = "false" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Registro Revisión
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpFiltro" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-4 ">
<div class="portlet light bordered xspadding">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-table font-green"></i>
<span class="caption-subject bold uppercase">
<asp:Label runat="server" ID="LblTitulo">Tipo Servicio</asp:Label></span>
</div>
<div class="actions">
<div class="btn-group">
<%--<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" class="btn btn-success" />--%>
</div>
</div>
</div>
<div class="portlet-body form">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTipoServicio" CssClass="form-control" runat="server" MaxLength="50"></asp:TextBox>
<asp:Label AssociatedControlID="TxtTipoServicio" runat="server" Text="Tipo:"></asp:Label>
<asp:RequiredFieldValidator ID="RFVTxtTipoServicio" runat="server" ControlToValidate="TxtTipoServicio" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtDescripcion" runat="server" MaxLength="30"></asp:TextBox>
<asp:Label AssociatedControlID="TxtDescripcion" runat="server" Text="Descripción:"></asp:Label>
<asp:RequiredFieldValidator ID="RFVDdlTipoMantenimiento" InitialValue="-1" runat="server" ControlToValidate="TxtDescripcion" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoMantenimiento" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="TipoMantenimiento" DataValueField="CveTipoMantenimiento"></asp:DropDownList>
<label for="<%= DdlTipoMantenimiento.ClientID.ToString()%>">
<asp:Label runat="server" ID="LblTipo" Text="Tipo Mantenimiento:"></asp:Label>
</label>
<i></i>
<asp:RequiredFieldValidator ID="RFVDdlTipoServicio" runat="server" InitialValue="-1" ControlToValidate="DdlTipoMantenimiento" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo Mantenimientp''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtDuracion" runat="server" MaxLength="30"></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtDuracion" FilterType="Numbers,Custom" InvalidChars="-*+" ValidChars="1234567890." />
<asp:Label AssociatedControlID="TxtDuracion" runat="server" Text="Duración:"></asp:Label>
<asp:RequiredFieldValidator ID="RFVTxtDuracion" runat="server" ControlToValidate="TxtDuracion" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Duración''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<i></i>
</div>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<ajax:TabContainer ID="Tab" runat="server" ActiveTabIndex="0" Width="100%" >
<ajax:TabPanel ID="TabMaterial" runat="server" HeaderText="Materia">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvMaterial" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron datos" ToolTip="" CssClass="table table-smallpadding Widthall"
DataKeyNames=""
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Unidad">
<ItemStyle Width="350px" />
<ItemTemplate>
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Unidad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabActividades" runat="server" HeaderText="Actividades">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvActividades" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron datos" ToolTip="" CssClass="table table-smallpadding Widthall"
DataKeyNames=""
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Unidad">
<ItemStyle Width="350px" />
<ItemTemplate>
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Unidad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabCheckList" runat="server" HeaderText="check List">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvCheckList" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron datos" ToolTip="" CssClass="table table-smallpadding Widthall"
DataKeyNames=""
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Unidad">
<ItemStyle Width="350px" />
<ItemTemplate>
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Unidad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<div id="ModalDescargaReporte" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">
<asp:UpdatePanel ID="UpModalTitleModalDescargaReporte" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Literal ID="LtlModalTitleModalDescargaReporte" runat="server">Descarga reporte </asp:Literal>
</ContentTemplate>
</asp:UpdatePanel>
</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UpModalCuerpoModalDescargaReporte" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<p>Metricas guardadas correctamente.</p>
<%-- <asp:LinkButton ID="LnkDescargaReporte" runat="server" OnClick="LnkDescargaReporte_Click">
<i class="fa fa-arrow-down" style="font-weight:bold;"></i> Descarga Reporte Excel</asp:LinkButton>--%>
</div>
</div>
</ContentTemplate>
<Triggers>
<%-- <asp:PostBackTrigger ControlID="LnkDescargaReporte" />--%>
</Triggers>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12" style="text-align:center">
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" CssClass="btn btn-primary" OnClick="BtnGuardar_Click" Visible="false" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

280
AF/TipoOrdenTrabajo.aspx.vb Normal file
View File

@@ -0,0 +1,280 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.IO
Imports Extensiones
Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Partial Class AF_TipoOrdenTrabajo
Inherits ClsPaginas
#Region " PROPIEDADES"
Property CveOrdenTrabajo As Integer
Get
If ViewState("CveOrdenTrabajo") Is Nothing Then
Return -1
Else
Return ViewState("CveOrdenTrabajo").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveOrdenTrabajo") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If Request("CveOrdenTrabajo") IsNot Nothing Then
CveOrdenTrabajo = Request("CveOrdenTrabajo").ToEntero
End If
CargaCombos()
End If
End Sub
#Region " CARGA PARAMETROS "
#End Region
#Region " CARGA COMBOS "
Protected Sub CargaCombos()
Dim ObjAF As New ClsAF
If ObjAF.GetTiposMantenimiento(-1) Then
DdlTipoMantenimiento.DataSource = ObjAF.DtResultados
Else
DdlTipoMantenimiento.DataSource = Nothing
End If
ObjAF.Dispose()
DdlTipoMantenimiento.DataBind()
DdlTipoMantenimiento.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
UpFiltro.Update()
End Sub
#End Region
#Region " CARGA DATOS "
'Protected Sub BtnFiltrar_Click(sender As Object, e As EventArgs)
' CargaDatos()
'End Sub
#End Region
#Region " GV DATOS "
Private Sub CargaDatos()
Dim ObjAF As New ClsAF
ObjAF.Dispose()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
End If
End Sub
#End Region
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
End Sub
#Region "DESCARGA EXCEL"
'Public Sub ExportToExcelG(Gv1 As GridView, NombreArchivoXLSx As String, Usuario As Usuario, Titulo As String, Optional AlturaImagen As Double = 100, Optional AnchoImagen As Double = 100, Optional filtros As String = "")
' For Each GvRow As GridViewRow In Gv1.Rows
' Dim IDX_LIMPIAR As Integer = 1
' For IDX_LIMPIAR = 1 To 15
' GvRow.Cells(IDX_LIMPIAR).Text = GvRow.FCTextBox($"TxtMetrica{IDX_LIMPIAR}").Text
' Next
' If GvRow.FCDropDownList("DDLPersonal").SelectedValue.ToEntero > 0 Then
' GvRow.Cells(16).Text = GvRow.FCDropDownList("DDLPersonal").SelectedItem.Text
' Else
' GvRow.Cells(16).Text = ""
' End If
' Next
' Dim sw1 As New StringWriter()
' Dim htw1 As New HtmlTextWriter(sw1)
' Gv1.RenderControl(htw1)
' Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
' Dim htmlStream1 = New MemoryStream(options.Encoding.GetBytes(sw1.ToString()))
' htmlStream1.Position = 0
' Dim sr1 As New StreamReader(htmlStream1)
' Dim myStr1 = sr1.ReadToEnd()
' sr1.Dispose()
' htmlStream1.Dispose()
' sw1.Dispose()
' Dim HtmlCompleto As String = myStr1
' HtmlCompleto = Regex.Replace(HtmlCompleto, "\<[\/]*a[^\>]*\>", "")
' Dim asd As String = ""
' Dim htmlStream5 = New MemoryStream(options.Encoding.GetBytes(HtmlCompleto))
' GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet())
' Dim excel As GemBox.Spreadsheet.ExcelFile
' excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream5, options)
' If Usuario IsNot Nothing Then
' Dim TotalRowHeader As Integer = 8
' Dim TotalRowFooter As Integer = 2
' Dim worksheet = excel.Worksheets(0)
' worksheet.Rows.InsertEmpty(0, TotalRowHeader)
' Dim celdasConTexto = worksheet.GetUsedCellRange(True)
' celdasConTexto.Style.Font.Name = "Calibri Light"
' Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
' RangoNombreEmpresa.Merged = True
' RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
' RangoNombreEmpresa.Style.Font.Size = 18 * 20
' RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
' RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' Dim RangoFiltros = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex)
' RangoFiltros.Merged = True
' RangoFiltros.Value = filtros
' RangoFiltros.Style.Font.Size = 15 * 20
' RangoFiltros.Style.Font.Name = "Calibri Light"
' RangoFiltros.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
' RangoFiltros.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
' RangoTitulo.Merged = True
' RangoTitulo.Value = Titulo
' RangoTitulo.Style.Font.Size = 20 * 20
' RangoTitulo.Style.Font.Name = "Calibri Light"
' RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
' worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20
' worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
' worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
' worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
' worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
' If i > 0 Then
' Try
' worksheet.Columns(i).AutoFit(1)
' Catch ex As Exception
' End Try
' End If
' Next
' Dim IndexEndTable As Integer = Gv1.Rows.Count + 4 + TotalRowHeader + TotalRowFooter
' worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió"
' worksheet.Rows(IndexEndTable + 1).Cells(0).Value = Usuario.Nombre
' worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión"
' worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy")
' Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
' If Imagen.Exists Then
' Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
' Using sr As New StreamReader(Ruta)
' Dim ms As New MemoryStream()
' sr.BaseStream.CopyTo(ms)
' worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
' End Using
' End If
' End If
' Dim memoryStream As New MemoryStream()
' excel.Save(memoryStream, SaveOptions.XlsxDefault)
' ReporteBytes = memoryStream.ToArray()
' memoryStream.Dispose()
'End Sub
'Protected Sub LnkDescargaReporte_Click(sender As Object, e As EventArgs)
' Response.ContentType = "application/force-download"
' Response.AppendHeader("Content-Disposition", $"attachment;filename=RegistroRevision{Now.ToString("yyyyMMddmmss")}.xlsx")
' Response.BinaryWrite(ReporteBytes)
' Response.End()
'End Sub
'Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
'End Sub
#End Region
End Class

View File

@@ -3775,6 +3775,226 @@ Public Class ClsAF
Return Retorno Return Retorno
End Function End Function
Public Function AddActividades(Nombre As String, CvePuesto As Integer, Cantidad As Decimal, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_ActividadesAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@Nombre", SqlDbType.NVarChar).Value = Nombre
.Add("@CvePuesto", SqlDbType.Int).Value = CvePuesto
.Add("@Cantidad", SqlDbType.SmallMoney).Value = Cantidad
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al agregar la actividad", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function UpdateActividades(CveActividad As Integer, Nombre As String, CvePuesto As Integer, Cantidad As Decimal, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_ActividadesUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveActividad", SqlDbType.Int).Value = CveActividad
.Add("@Nombre", SqlDbType.NVarChar).Value = Nombre
.Add("@CvePuesto", SqlDbType.Int).Value = CvePuesto
.Add("@Cantidad", SqlDbType.SmallMoney).Value = Cantidad
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar la actividad", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function DeleteActividades(CveActividad As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_ActividadesDelete")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveActividad", SqlDbType.Int).Value = CveActividad
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar la actividad", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function GetCheckListActividadGrupo(CveCheckListActividadGrupo As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListGrupoGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListActividadGrupo", SqlDbType.Int).Value = CveCheckListActividadGrupo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el grupo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function AddCheckListActividadGrupo(CheckListActividadGrupo As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListGrupoAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@CheckListActividadGrupo", SqlDbType.NVarChar).Value = CheckListActividadGrupo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al agregar el grupo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function UpdateCheckListActividadGrupo(CveCheckListActividadGrupo As Integer, CheckListActividadGrupo As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListGrupoUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListActividadGrupo", SqlDbType.Int).Value = CveCheckListActividadGrupo
.Add("@CheckListActividadGrupo", SqlDbType.NVarChar).Value = CheckListActividadGrupo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar el grupo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function DeleteCheckListActividadGrupo(CveCheckListActividadGrupo As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListGrupoDelete")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListActividadGrupo", SqlDbType.Int).Value = CveCheckListActividadGrupo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar el grupo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function GetCheckListTipo(CveCheckListTipo As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListTipoGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListTipo", SqlDbType.Int).Value = CveCheckListTipo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el tipo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function AddCheckListTipo(CheckListTipo As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListTipoAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@CheckListTipo", SqlDbType.NVarChar).Value = CheckListTipo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al agregar el tipo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function UpdateCheckListTipo(CveCheckListTipo As Integer, CheckListTipo As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListTipoUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListTipo", SqlDbType.Int).Value = CveCheckListTipo
.Add("@CheckListTipo", SqlDbType.NVarChar).Value = CheckListTipo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar el tipo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function DeleteCheckListTipo(CveCheckListTipo As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_AF_CheckListTipoDelete")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCheckListTipo", SqlDbType.Int).Value = CveCheckListTipo
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar el tipo de CheckList", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
#End Region #End Region

View File

@@ -3955,6 +3955,14 @@ Public Class ClsPaginas
PaginaDict.Add("/AF/CatTiposServicios.aspx".ToUpper(), 765) PaginaDict.Add("/AF/CatTiposServicios.aspx".ToUpper(), 765)
PaginaDict.Add("/AF/CatTiposServiciosActividades.aspx".ToUpper(), 766) PaginaDict.Add("/AF/CatTiposServiciosActividades.aspx".ToUpper(), 766)
PaginaDict.Add("/AF/CatTiposServiciosMateriales.aspx".ToUpper(), 767) PaginaDict.Add("/AF/CatTiposServiciosMateriales.aspx".ToUpper(), 767)
PaginaDict.Add("/AF/CatActividades.aspx".ToUpper(), 768)
PaginaDict.Add("/AF/CatCheckListActividadesGrupos.aspx".ToUpper(), 769)
PaginaDict.Add("/AF/CatCheckListTipo.aspx".ToUpper(), 770)
PaginaDict.Add("/AF/TipoOrdenTrabajo.aspx".ToUpper(), -1)
PaginaDict.Add("/AF/OrdenTrabajo.aspx".ToUpper(), -1)
PaginaDict.Add("/AF/RepOrdenTrabajo.aspx".ToUpper(), -1)
#End Region #End Region
'AIMMGM 'AIMMGM
#Region "AIMMGM" #Region "AIMMGM"

View File

@@ -3839,7 +3839,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al agregar el Curso CursoAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al agregar el Curso CursoAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -3875,7 +3875,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Actualizar el Curso CursoUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Actualizar el Curso CursoUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -3894,12 +3894,12 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
Retorno = True Retorno = True
Catch exs As SqlException Catch exs As SqlException
If exs.ErrorCode = -2146232060 Then If exs.ErrorCode = -2146232060 Then
OnError("Ocurrió al Eliminar el Curso, Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Curso, Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else Else
OnError("Ocurrió al Eliminar el Curso CursoRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Curso CursoRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End If End If
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Eliminar el Curso CursoRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Curso CursoRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
@@ -3924,7 +3924,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al consultar el reporte CursosRepGet.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al consultar el reporte CursosRepGet.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4115,7 +4115,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al agregar el Tema TemaAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al agregar el Tema TemaAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4140,7 +4140,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Actualizar el Tema TemaUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió error al Actualizar el Tema TemaUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4161,9 +4161,9 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
If exs.Message.Contains("Número: 547;") Then If exs.Message.Contains("Número: 547;") Then
OnError("Ocurrió al Eliminar el Tema Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("El Tema no se puede eliminar porque tiene registros relacionados..", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else Else
OnError("Ocurrió al Eliminar el Tema TemasRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("El Tema no se puede eliminar porque tiene registros relacionados. TemasRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End If End If
@@ -4174,7 +4174,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
'End If 'End If
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Eliminar el Tema TemasRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Tema TemasRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
End Function End Function
@@ -4225,7 +4225,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al agregar el Subtema SubtemaAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al agregar el Subtema SubtemaAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4251,7 +4251,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Actualizar el Subtema SubtemaUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Actualizar el Subtema SubtemaUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4270,12 +4270,12 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
Catch exs As SqlException Catch exs As SqlException
If exs.ErrorCode = -2146232060 Then If exs.ErrorCode = -2146232060 Then
OnError("Ocurrió al Eliminar el Subtema, Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Subtema, Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else Else
OnError("Ocurrió al Eliminar el Subtema SubtemaRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Subtema SubtemaRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End If End If
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Eliminar el Subtema SubtemaRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Subtema SubtemaRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
End Function End Function
@@ -4329,7 +4329,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al agregar el Capacitador CapacitadorAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al agregar el Capacitador CapacitadorAdd.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4358,7 +4358,7 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Actualizar el Capacitador CapacitadorUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Actualizar el Capacitador CapacitadorUpdate.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno
@@ -4376,12 +4376,12 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
Retorno = True Retorno = True
Catch exs As SqlException Catch exs As SqlException
If exs.ErrorCode = -2146232060 Then If exs.ErrorCode = -2146232060 Then
OnError("Ocurrió al Eliminar el Tema Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Tema Existen registros relacionadados.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else Else
OnError("Ocurrió al Eliminar el Tema CapaditadorRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Tema CapaditadorRemove.", exs, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End If End If
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió al Eliminar el Tema CapacitadorRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) OnError("Ocurrió un error al Eliminar el Tema CapacitadorRemove.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try End Try
Return Retorno Return Retorno

View File

@@ -235,6 +235,24 @@
<xs:element name="CveVenta" msprop:Generator_ColumnVarNameInTable="columnCveVenta" msprop:Generator_ColumnPropNameInRow="CveVenta" msprop:Generator_ColumnPropNameInTable="CveVentaColumn" msprop:Generator_UserColumnName="CveVenta" type="xs:short" minOccurs="0" /> <xs:element name="CveVenta" msprop:Generator_ColumnVarNameInTable="columnCveVenta" msprop:Generator_ColumnPropNameInRow="CveVenta" msprop:Generator_ColumnPropNameInTable="CveVentaColumn" msprop:Generator_UserColumnName="CveVenta" type="xs:short" minOccurs="0" />
<xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:string" minOccurs="0" /> <xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:string" minOccurs="0" />
<xs:element name="RetIVAServicios" msprop:Generator_ColumnVarNameInTable="columnRetIVAServicios" msprop:Generator_ColumnPropNameInRow="RetIVAServicios" msprop:Generator_ColumnPropNameInTable="RetIVAServiciosColumn" msprop:Generator_UserColumnName="RetIVAServicios" type="xs:double" minOccurs="0" /> <xs:element name="RetIVAServicios" msprop:Generator_ColumnVarNameInTable="columnRetIVAServicios" msprop:Generator_ColumnPropNameInRow="RetIVAServicios" msprop:Generator_ColumnPropNameInTable="RetIVAServiciosColumn" msprop:Generator_UserColumnName="RetIVAServicios" type="xs:double" minOccurs="0" />
<xs:element name="Fecha" msprop:Generator_ColumnVarNameInTable="columnFecha" msprop:Generator_ColumnPropNameInRow="Fecha" msprop:Generator_ColumnPropNameInTable="FechaColumn" msprop:Generator_UserColumnName="Fecha" type="xs:string" minOccurs="0" />
<xs:element name="FolioFiscal" msprop:Generator_ColumnVarNameInTable="columnFolioFiscal" msprop:Generator_ColumnPropNameInRow="FolioFiscal" msprop:Generator_ColumnPropNameInTable="FolioFiscalColumn" msprop:Generator_UserColumnName="FolioFiscal" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DtVentaDetalle" msprop:Generator_TableClassName="DtVentaDetalleDataTable" msprop:Generator_TableVarName="tableDtVentaDetalle" msprop:Generator_RowChangedName="DtVentaDetalleRowChanged" msprop:Generator_TablePropName="DtVentaDetalle" msprop:Generator_RowDeletingName="DtVentaDetalleRowDeleting" msprop:Generator_RowChangingName="DtVentaDetalleRowChanging" msprop:Generator_RowEvHandlerName="DtVentaDetalleRowChangeEventHandler" msprop:Generator_RowDeletedName="DtVentaDetalleRowDeleted" msprop:Generator_RowClassName="DtVentaDetalleRow" msprop:Generator_UserTableName="DtVentaDetalle" msprop:Generator_RowEvArgName="DtVentaDetalleRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="Cantidad" msprop:Generator_ColumnVarNameInTable="columnCantidad" msprop:Generator_ColumnPropNameInRow="Cantidad" msprop:Generator_ColumnPropNameInTable="CantidadColumn" msprop:Generator_UserColumnName="Cantidad" type="xs:string" minOccurs="0" />
<xs:element name="UM" msprop:Generator_ColumnVarNameInTable="columnUM" msprop:Generator_ColumnPropNameInRow="UM" msprop:Generator_ColumnPropNameInTable="UMColumn" msprop:Generator_UserColumnName="UM" type="xs:string" minOccurs="0" />
<xs:element name="SATClaveProdServ" msprop:Generator_ColumnVarNameInTable="columnSATClaveProdServ" msprop:Generator_ColumnPropNameInRow="SATClaveProdServ" msprop:Generator_ColumnPropNameInTable="SATClaveProdServColumn" msprop:Generator_UserColumnName="SATClaveProdServ" type="xs:string" minOccurs="0" />
<xs:element name="SATClaveUM" msprop:Generator_ColumnVarNameInTable="columnSATClaveUM" msprop:Generator_ColumnPropNameInRow="SATClaveUM" msprop:Generator_ColumnPropNameInTable="SATClaveUMColumn" msprop:Generator_UserColumnName="SATClaveUM" type="xs:string" minOccurs="0" />
<xs:element name="PS" msprop:Generator_ColumnVarNameInTable="columnPS" msprop:Generator_ColumnPropNameInRow="PS" msprop:Generator_ColumnPropNameInTable="PSColumn" msprop:Generator_UserColumnName="PS" type="xs:string" minOccurs="0" />
<xs:element name="Obs" msprop:Generator_ColumnVarNameInTable="columnObs" msprop:Generator_ColumnPropNameInRow="Obs" msprop:Generator_ColumnPropNameInTable="ObsColumn" msprop:Generator_UserColumnName="Obs" type="xs:string" minOccurs="0" />
<xs:element name="PU" msprop:Generator_ColumnVarNameInTable="columnPU" msprop:Generator_ColumnPropNameInRow="PU" msprop:Generator_ColumnPropNameInTable="PUColumn" msprop:Generator_UserColumnName="PU" type="xs:string" minOccurs="0" />
<xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:string" minOccurs="0" />
<xs:element name="Descuento" msprop:Generator_ColumnVarNameInTable="columnDescuento" msprop:Generator_ColumnPropNameInRow="Descuento" msprop:Generator_ColumnPropNameInTable="DescuentoColumn" msprop:Generator_UserColumnName="Descuento" type="xs:string" minOccurs="0" />
<xs:element name="CveClasificacion" msprop:Generator_ColumnVarNameInTable="columnCveClasificacion" msprop:Generator_ColumnPropNameInRow="CveClasificacion" msprop:Generator_ColumnPropNameInTable="CveClasificacionColumn" msprop:Generator_UserColumnName="CveClasificacion" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
@@ -271,22 +289,8 @@
<xs:element name="valorActosImp8" msprop:Generator_ColumnVarNameInTable="columnvalorActosImp8" msprop:Generator_ColumnPropNameInRow="valorActosImp8" msprop:Generator_ColumnPropNameInTable="valorActosImp8Column" msprop:Generator_UserColumnName="valorActosImp8" type="xs:double" minOccurs="0" /> <xs:element name="valorActosImp8" msprop:Generator_ColumnVarNameInTable="columnvalorActosImp8" msprop:Generator_ColumnPropNameInRow="valorActosImp8" msprop:Generator_ColumnPropNameInTable="valorActosImp8Column" msprop:Generator_UserColumnName="valorActosImp8" type="xs:double" minOccurs="0" />
<xs:element name="valorActosImp0" msprop:Generator_ColumnVarNameInTable="columnvalorActosImp0" msprop:Generator_ColumnPropNameInRow="valorActosImp0" msprop:Generator_ColumnPropNameInTable="valorActosImp0Column" msprop:Generator_UserColumnName="valorActosImp0" type="xs:double" minOccurs="0" /> <xs:element name="valorActosImp0" msprop:Generator_ColumnVarNameInTable="columnvalorActosImp0" msprop:Generator_ColumnPropNameInRow="valorActosImp0" msprop:Generator_ColumnPropNameInTable="valorActosImp0Column" msprop:Generator_UserColumnName="valorActosImp0" type="xs:double" minOccurs="0" />
<xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:double" minOccurs="0" /> <xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:double" minOccurs="0" />
</xs:sequence> <xs:element name="Fecha" msprop:Generator_ColumnVarNameInTable="columnFecha" msprop:Generator_ColumnPropNameInRow="Fecha" msprop:Generator_ColumnPropNameInTable="FechaColumn" msprop:Generator_UserColumnName="Fecha" type="xs:dateTime" minOccurs="0" />
</xs:complexType> <xs:element name="FolioFiscal" msprop:Generator_ColumnVarNameInTable="columnFolioFiscal" msprop:Generator_ColumnPropNameInRow="FolioFiscal" msprop:Generator_ColumnPropNameInTable="FolioFiscalColumn" msprop:Generator_UserColumnName="FolioFiscal" type="xs:string" minOccurs="0" />
</xs:element>
<xs:element name="DtVentaDetalle" msprop:Generator_TableClassName="DtVentaDetalleDataTable" msprop:Generator_TableVarName="tableDtVentaDetalle" msprop:Generator_RowChangedName="DtVentaDetalleRowChanged" msprop:Generator_TablePropName="DtVentaDetalle" msprop:Generator_RowDeletingName="DtVentaDetalleRowDeleting" msprop:Generator_RowChangingName="DtVentaDetalleRowChanging" msprop:Generator_RowEvHandlerName="DtVentaDetalleRowChangeEventHandler" msprop:Generator_RowDeletedName="DtVentaDetalleRowDeleted" msprop:Generator_RowClassName="DtVentaDetalleRow" msprop:Generator_UserTableName="DtVentaDetalle" msprop:Generator_RowEvArgName="DtVentaDetalleRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="Cantidad" msprop:Generator_ColumnVarNameInTable="columnCantidad" msprop:Generator_ColumnPropNameInRow="Cantidad" msprop:Generator_ColumnPropNameInTable="CantidadColumn" msprop:Generator_UserColumnName="Cantidad" type="xs:string" minOccurs="0" />
<xs:element name="UM" msprop:Generator_ColumnVarNameInTable="columnUM" msprop:Generator_ColumnPropNameInRow="UM" msprop:Generator_ColumnPropNameInTable="UMColumn" msprop:Generator_UserColumnName="UM" type="xs:string" minOccurs="0" />
<xs:element name="SATClaveProdServ" msprop:Generator_ColumnVarNameInTable="columnSATClaveProdServ" msprop:Generator_ColumnPropNameInRow="SATClaveProdServ" msprop:Generator_ColumnPropNameInTable="SATClaveProdServColumn" msprop:Generator_UserColumnName="SATClaveProdServ" type="xs:string" minOccurs="0" />
<xs:element name="SATClaveUM" msprop:Generator_ColumnVarNameInTable="columnSATClaveUM" msprop:Generator_ColumnPropNameInRow="SATClaveUM" msprop:Generator_ColumnPropNameInTable="SATClaveUMColumn" msprop:Generator_UserColumnName="SATClaveUM" type="xs:string" minOccurs="0" />
<xs:element name="PS" msprop:Generator_ColumnVarNameInTable="columnPS" msprop:Generator_ColumnPropNameInRow="PS" msprop:Generator_ColumnPropNameInTable="PSColumn" msprop:Generator_UserColumnName="PS" type="xs:string" minOccurs="0" />
<xs:element name="Obs" msprop:Generator_ColumnVarNameInTable="columnObs" msprop:Generator_ColumnPropNameInRow="Obs" msprop:Generator_ColumnPropNameInTable="ObsColumn" msprop:Generator_UserColumnName="Obs" type="xs:string" minOccurs="0" />
<xs:element name="PU" msprop:Generator_ColumnVarNameInTable="columnPU" msprop:Generator_ColumnPropNameInRow="PU" msprop:Generator_ColumnPropNameInTable="PUColumn" msprop:Generator_UserColumnName="PU" type="xs:string" minOccurs="0" />
<xs:element name="PorcentajeIVA" msprop:Generator_ColumnVarNameInTable="columnPorcentajeIVA" msprop:Generator_ColumnPropNameInRow="PorcentajeIVA" msprop:Generator_ColumnPropNameInTable="PorcentajeIVAColumn" msprop:Generator_UserColumnName="PorcentajeIVA" type="xs:string" minOccurs="0" />
<xs:element name="Descuento" msprop:Generator_ColumnVarNameInTable="columnDescuento" msprop:Generator_ColumnPropNameInRow="Descuento" msprop:Generator_ColumnPropNameInTable="DescuentoColumn" msprop:Generator_UserColumnName="Descuento" type="xs:string" minOccurs="0" />
<xs:element name="CveClasificacion" msprop:Generator_ColumnVarNameInTable="columnCveClasificacion" msprop:Generator_ColumnPropNameInRow="CveClasificacion" msprop:Generator_ColumnPropNameInTable="CveClasificacionColumn" msprop:Generator_UserColumnName="CveClasificacion" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>

View File

@@ -4,7 +4,7 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="7" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout"> <DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="191" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <Shapes>
<Shape ID="DesignTable:DataTable1" ZOrder="13" X="511" Y="201" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="139" /> <Shape ID="DesignTable:DataTable1" ZOrder="13" X="511" Y="201" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="139" />
<Shape ID="DesignTable:VentaUtilidadDetalle" ZOrder="12" X="679" Y="199" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:VentaUtilidadDetalle" ZOrder="12" X="679" Y="199" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
@@ -16,9 +16,9 @@
<Shape ID="DesignTable:RepProveedorCxP" ZOrder="6" X="63" Y="251" Height="238" Width="170" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="234" /> <Shape ID="DesignTable:RepProveedorCxP" ZOrder="6" X="63" Y="251" Height="238" Width="170" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="234" />
<Shape ID="DesignTable:ResumenNC" ZOrder="5" X="697" Y="496" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="82" /> <Shape ID="DesignTable:ResumenNC" ZOrder="5" X="697" Y="496" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="82" />
<Shape ID="DesignTable:ProgramarRecursos" ZOrder="4" X="484" Y="563" Height="257" Width="206" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:ProgramarRecursos" ZOrder="4" X="484" Y="563" Height="257" Width="206" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:RepIVA" ZOrder="3" X="315" Y="564" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:RepIVA" ZOrder="3" X="315" Y="564" Height="296" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="292" />
<Shape ID="DesignTable:RepIVAAcreditable" ZOrder="2" X="91" Y="567" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:DtVentaDetalle" ZOrder="2" X="280" Y="34" Height="219" Width="154" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="215" />
<Shape ID="DesignTable:DtVentaDetalle" ZOrder="1" X="280" Y="34" Height="219" Width="154" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="215" /> <Shape ID="DesignTable:RepIVAAcreditable" ZOrder="1" X="94" Y="508" Height="256" Width="175" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="252" />
</Shapes> </Shapes>
<Connectors /> <Connectors />
</DiagramLayout> </DiagramLayout>

View File

@@ -9,6 +9,9 @@ Imports Extensiones
Imports System.IO Imports System.IO
Imports Microsoft.Reporting.WebForms Imports Microsoft.Reporting.WebForms
Imports ADSistemaLibrary.SatXml
Imports ADSistemaLibrary.SatXml.XmlSatCFDI
Public Class GenerarPDFFactura : Implements IHttpHandler Public Class GenerarPDFFactura : Implements IHttpHandler
Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
@@ -19,11 +22,12 @@ Public Class GenerarPDFFactura : Implements IHttpHandler
Public ReadOnly Property EsProduccion As Boolean Public ReadOnly Property EsProduccion As Boolean
Get Get
If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then Return False
Return False 'If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then
Else ' Return False
Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1") 'Else
End If ' Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1")
'End If
End Get End Get
End Property End Property
@@ -46,96 +50,211 @@ Public Class GenerarPDFFactura : Implements IHttpHandler
Dim Formato As String = "" Dim Formato As String = ""
If datos.API_SALI Then Dim Xml = New System.Xml.XmlDocument()
Formato = ModExtensiones.DirectorioBaseEmpresas + "Empresas/Grales/ReporteAPISali.rdlc" Xml.LoadXml(datos.XML)
Else Dim ArchivoXML = $"{context.Server.MapPath("/")}/Temp/{DateTime.UtcNow.Ticks}_{datos.Factura.Serie}-{datos.Factura.Folio}.xml"
Formato = ModExtensiones.DirectorioBaseEmpresas + "Empresas/Grales/ReporteAPI.rdlc" Xml.Save(ArchivoXML)
End If
Parametros.Add(New ReportParameter("Empresa", datos.Empresa.Empresa)) ImprimirbytesPDF(context, GenerarCFDi(context, ArchivoXML, datos), "Factura")
Parametros.Add(New ReportParameter("RFC", datos.Empresa.RFC))
Parametros.Add(New ReportParameter("DomicilioExpedicion", datos.Empresa.DomicilioFiscal))
Parametros.Add(New ReportParameter("Serie", datos.Factura.Serie))
Parametros.Add(New ReportParameter("Folio", datos.Factura.Folio))
Parametros.Add(New ReportParameter("Fecha", datos.Factura.Fecha))
Parametros.Add(New ReportParameter("ClienteNombre", datos.Cliente.NombreComercial))
Parametros.Add(New ReportParameter("ClienteDireccion", datos.Cliente.Calle + " Colonia " + datos.Cliente.Colonia + " " + datos.Cliente.Ciudad + ", " + datos.Cliente.Estado))
Parametros.Add(New ReportParameter("ClienteLugar", datos.Cliente.Ciudad))
Parametros.Add(New ReportParameter("ClienteRFC", datos.Cliente.RFC))
Parametros.Add(New ReportParameter("ImporteLetra", datos.Factura.Total.Texto2Letras()))
Parametros.Add(New ReportParameter("FormaPago", datos.Factura.FormaPago))
Parametros.Add(New ReportParameter("MetodoPago", datos.Factura.MetodoPago))
Parametros.Add(New ReportParameter("SelloCFDI", datos.Timbrado.SelloCFDI))
Parametros.Add(New ReportParameter("SelloSAT", datos.Timbrado.SelloSAT))
Parametros.Add(New ReportParameter("CadenaOriginal", datos.Timbrado.CadenaOriginal))
Parametros.Add(New ReportParameter("FolioFiscal", datos.Factura.UUID))
Parametros.Add(New ReportParameter("SerieCertificadoSAT", datos.Timbrado.SerieCertificadoSAT))
Parametros.Add(New ReportParameter("FechaCertificado", datos.Timbrado.FechaCertificado))
Parametros.Add(New ReportParameter("CertificadoContribuyente", datos.Timbrado.CertificadoContribuyente))
Parametros.Add(New ReportParameter("UsoCFDI", datos.Factura.UsoCFDI))
Parametros.Add(New ReportParameter("Vencimiento", datos.Factura.FechaVencimiento))
Parametros.Add(New ReportParameter("SubTotal", datos.Factura.SubTotal))
Parametros.Add(New ReportParameter("Descuentos", datos.Factura.Descuentos))
Parametros.Add(New ReportParameter("IVA", datos.Factura.IVA))
Parametros.Add(New ReportParameter("IEPS", datos.Factura.IEPS))
Parametros.Add(New ReportParameter("Total", datos.Factura.Total))
Parametros.Add(New ReportParameter("QR", datos.Timbrado.QR))
Dim DtDatos As New DataTable 'If datos.API_SALI Then
DtDatos.Columns.Add(New DataColumn("Cantidad", GetType(Decimal))) ' Dim Xml = New System.Xml.XmlDocument()
DtDatos.Columns.Add(New DataColumn("UnidadMedida", GetType(String))) ' Xml.LoadXml(datos.XML)
DtDatos.Columns.Add(New DataColumn("PS", GetType(String))) ' Dim ArchivoXML = $"{context.Server.MapPath("/")}/Temp/{DateTime.UtcNow.Ticks}_{datos.Factura.Serie}-{datos.Factura.Folio}.xml"
DtDatos.Columns.Add(New DataColumn("PU", GetType(Decimal))) ' Xml.Save(ArchivoXML)
DtDatos.Columns.Add(New DataColumn("IVA", GetType(Decimal)))
DtDatos.Columns.Add(New DataColumn("IEPS", GetType(Decimal)))
DtDatos.Columns.Add(New DataColumn("Descuento", GetType(Decimal)))
DtDatos.Columns.Add(New DataColumn("Total", GetType(Decimal)))
Dim DtImpuestos As New DataTable ' ImprimirbytesPDF(context, GenerarCFDi(context, ArchivoXML, datos), "Factura")
DtImpuestos.Columns.Add(New DataColumn("Impuesto", GetType(String))) 'Else
DtImpuestos.Columns.Add(New DataColumn("Tipo", GetType(String))) ' Formato = ModExtensiones.DirectorioBaseEmpresas + "Empresas/Grales/ReporteAPI.rdlc"
DtImpuestos.Columns.Add(New DataColumn("Base", GetType(Decimal)))
DtImpuestos.Columns.Add(New DataColumn("TipoFactor", GetType(String)))
DtImpuestos.Columns.Add(New DataColumn("TasaOCuota", GetType(String)))
DtImpuestos.Columns.Add(New DataColumn("Importe", GetType(Decimal)))
For Each PS In datos.Factura.ListaProductos ' Parametros.Add(New ReportParameter("Empresa", datos.Empresa.Empresa))
Dim Row = DtDatos.NewRow() ' Parametros.Add(New ReportParameter("RFC", datos.Empresa.RFC))
Row("Cantidad") = PS.Cantidad ' Parametros.Add(New ReportParameter("DomicilioExpedicion", datos.Empresa.DomicilioFiscal))
Row("UnidadMedida") = PS.UnidadMedida ' Parametros.Add(New ReportParameter("Serie", datos.Factura.Serie))
Row("PS") = PS.CodigoPS ' Parametros.Add(New ReportParameter("Folio", datos.Factura.Folio))
Row("PU") = PS.PU ' Parametros.Add(New ReportParameter("Fecha", datos.Factura.Fecha))
Row("IVA") = PS.IVA ' Parametros.Add(New ReportParameter("ClienteNombre", datos.Cliente.NombreComercial))
Row("IEPS") = PS.IEPS ' Parametros.Add(New ReportParameter("ClienteDireccion", datos.Cliente.Calle + " Colonia " + datos.Cliente.Colonia + " " + datos.Cliente.Ciudad + ", " + datos.Cliente.Estado))
Row("Descuento") = PS.Descuento ' Parametros.Add(New ReportParameter("ClienteLugar", datos.Cliente.Ciudad))
Row("Total") = (PS.Cantidad * PS.PU) + PS.IVA + PS.IEPS ' Parametros.Add(New ReportParameter("ClienteRFC", datos.Cliente.RFC))
' Parametros.Add(New ReportParameter("ImporteLetra", datos.Factura.Total.Texto2Letras()))
' Parametros.Add(New ReportParameter("FormaPago", datos.Factura.FormaPago))
' Parametros.Add(New ReportParameter("MetodoPago", datos.Factura.MetodoPago))
' Parametros.Add(New ReportParameter("SelloCFDI", datos.Timbrado.SelloCFDI))
' Parametros.Add(New ReportParameter("SelloSAT", datos.Timbrado.SelloSAT))
' Parametros.Add(New ReportParameter("CadenaOriginal", datos.Timbrado.CadenaOriginal))
' Parametros.Add(New ReportParameter("FolioFiscal", datos.Factura.UUID))
' Parametros.Add(New ReportParameter("SerieCertificadoSAT", datos.Timbrado.SerieCertificadoSAT))
' Parametros.Add(New ReportParameter("FechaCertificado", datos.Timbrado.FechaCertificado))
' Parametros.Add(New ReportParameter("CertificadoContribuyente", datos.Timbrado.CertificadoContribuyente))
' Parametros.Add(New ReportParameter("UsoCFDI", datos.Factura.UsoCFDI))
' Parametros.Add(New ReportParameter("Vencimiento", datos.Factura.FechaVencimiento))
' Parametros.Add(New ReportParameter("SubTotal", datos.Factura.SubTotal))
' Parametros.Add(New ReportParameter("Descuentos", datos.Factura.Descuentos))
' Parametros.Add(New ReportParameter("IVA", datos.Factura.IVA))
' Parametros.Add(New ReportParameter("IEPS", datos.Factura.IEPS))
' Parametros.Add(New ReportParameter("Total", datos.Factura.Total))
' Parametros.Add(New ReportParameter("QR", datos.Timbrado.QR))
DtDatos.Rows.Add(Row) ' Dim DtDatos As New DataTable
Next ' DtDatos.Columns.Add(New DataColumn("Cantidad", GetType(Decimal)))
' DtDatos.Columns.Add(New DataColumn("UnidadMedida", GetType(String)))
' DtDatos.Columns.Add(New DataColumn("PS", GetType(String)))
' DtDatos.Columns.Add(New DataColumn("PU", GetType(Decimal)))
' DtDatos.Columns.Add(New DataColumn("IVA", GetType(Decimal)))
' DtDatos.Columns.Add(New DataColumn("IEPS", GetType(Decimal)))
' DtDatos.Columns.Add(New DataColumn("Descuento", GetType(Decimal)))
' DtDatos.Columns.Add(New DataColumn("Total", GetType(Decimal)))
Dim RowImpuesto = DtImpuestos.NewRow() ' Dim DtImpuestos As New DataTable
RowImpuesto("Impuesto") = "IVA" ' DtImpuestos.Columns.Add(New DataColumn("Impuesto", GetType(String)))
RowImpuesto("Tipo") = "Traslado" ' DtImpuestos.Columns.Add(New DataColumn("Tipo", GetType(String)))
RowImpuesto("Base") = datos.Factura.SubTotal ' DtImpuestos.Columns.Add(New DataColumn("Base", GetType(Decimal)))
RowImpuesto("TipoFactor") = "Tasa" ' DtImpuestos.Columns.Add(New DataColumn("TipoFactor", GetType(String)))
RowImpuesto("TasaOCuota") = "16%" ' DtImpuestos.Columns.Add(New DataColumn("TasaOCuota", GetType(String)))
RowImpuesto("Importe") = datos.Factura.IVA ' DtImpuestos.Columns.Add(New DataColumn("Importe", GetType(Decimal)))
DtImpuestos.Rows.Add(RowImpuesto) ' For Each PS In datos.Factura.ListaProductos
' Dim Row = DtDatos.NewRow()
' Row("Cantidad") = PS.Cantidad
' Row("UnidadMedida") = PS.UnidadMedida
' Row("PS") = PS.CodigoPS
' Row("PU") = PS.PU
' Row("IVA") = PS.IVA
' Row("IEPS") = PS.IEPS
' Row("Descuento") = PS.Descuento
' Row("Total") = (PS.Cantidad * PS.PU) + PS.IVA + PS.IEPS
ListaDS.Add(New ReportDataSource("DsProductos", DtDatos)) ' DtDatos.Rows.Add(Row)
ListaDS.Add(New ReportDataSource("DsImpuestos", DtImpuestos)) ' Next
ImprimirbytesPDF(context, StreamPDF(context, Formato, ListaDS, Parametros), "Factura") ' Dim RowImpuesto = DtImpuestos.NewRow()
' RowImpuesto("Impuesto") = "IVA"
' RowImpuesto("Tipo") = "Traslado"
' RowImpuesto("Base") = datos.Factura.SubTotal
' RowImpuesto("TipoFactor") = "Tasa"
' RowImpuesto("TasaOCuota") = "16%"
' RowImpuesto("Importe") = datos.Factura.IVA
' DtImpuestos.Rows.Add(RowImpuesto)
' ListaDS.Add(New ReportDataSource("DsProductos", DtDatos))
' ListaDS.Add(New ReportDataSource("DsImpuestos", DtImpuestos))
' ImprimirbytesPDF(context, StreamPDF(context, Formato, ListaDS, Parametros), "Factura")
'End If
Else
retorno = "no hay datossss"
End If End If
Catch ex As Exception Catch ex As Exception
retorno = ex.ToString()
ex.GuardaLog(ex.ToString()) ex.GuardaLog(ex.ToString())
context.Response.Write(retorno) context.Response.Write(retorno)
End Try End Try
End Sub End Sub
Private Function GenerarCFDi(ByVal context As HttpContext, RutaXml As String, datos As ParametroWS) As Byte()
Dim bytes As Byte() = Nothing
Dim objxml As XmlSatCFDI = XmlSatCFDI.readXML(RutaXml)
Dim rutaReporte As String = "\Empresas\Grales\Formatos\FacturaSALI.rdlc"
Dim QR As ClbNegBICFDv3_2.ClsNegCBBGenerar = New ClbNegBICFDv3_2.ClsNegCBBGenerar()
Dim cQr As Byte() = QR.GenerarCBBBytes(objxml.emisor.Rfc, objxml.receptor.Rfc, objxml.comprobante.Total, objxml.complemento.UUID)
Dim parametros As List(Of ReportParameter) = New List(Of ReportParameter)()
parametros.Add(New ReportParameter("comprobante_Certificado", objxml.comprobante.Certificado))
parametros.Add(New ReportParameter("comprobante_CondicionesDePago", objxml.comprobante.CondicionesDePago))
parametros.Add(New ReportParameter("comprobante_Confirmacion", objxml.comprobante.Confirmacion))
parametros.Add(New ReportParameter("comprobante_Fecha", objxml.comprobante.Fecha))
parametros.Add(New ReportParameter("comprobante_Serie", objxml.comprobante.Serie))
parametros.Add(New ReportParameter("comprobante_Folio", objxml.comprobante.Folio))
parametros.Add(New ReportParameter("comprobante_Descuento", objxml.comprobante.Descuento.ToString("N2")))
parametros.Add(New ReportParameter("comprobante_SubTotal", objxml.comprobante.SubTotal.ToString("N2")))
parametros.Add(New ReportParameter("comprobante_Total", objxml.comprobante.Total.ToString("N2")))
parametros.Add(New ReportParameter("comprobante_Version", objxml.comprobante.Version))
parametros.Add(New ReportParameter("comprobante_TipoDeComprobante", objxml.comprobante.TipoDeComprobanteTexto))
parametros.Add(New ReportParameter("comprobante_FormaPago", objxml.comprobante.FormaPagoTexto))
parametros.Add(New ReportParameter("comprobante_LugarExpedicion", objxml.comprobante.LugarExpedicion))
parametros.Add(New ReportParameter("comprobante_NoCertificado", objxml.comprobante.NoCertificado))
parametros.Add(New ReportParameter("comprobante_Sello", objxml.comprobante.Sello))
parametros.Add(New ReportParameter("comprobante_Moneda", objxml.comprobante.Moneda))
parametros.Add(New ReportParameter("comprobante_TipoCambio", objxml.comprobante.TipoCambio.ToString("N2")))
parametros.Add(New ReportParameter("comprobante_MetodoPago", objxml.comprobante.MetodoPagoTexto))
parametros.Add(New ReportParameter("emisor_Rfc", objxml.emisor.Rfc))
parametros.Add(New ReportParameter("emisor_Nombre", objxml.emisor.Nombre))
parametros.Add(New ReportParameter("emisor_RegimenFiscal", objxml.emisor.RegimenFiscalTexto))
parametros.Add(New ReportParameter("emisor_Direccion", datos.Empresa.DomicilioFiscal))
parametros.Add(New ReportParameter("receptor_Rfc", objxml.receptor.Rfc))
parametros.Add(New ReportParameter("receptor_Nombre", objxml.receptor.Nombre))
parametros.Add(New ReportParameter("receptor_NumRegIdTrib", objxml.receptor.NumRegIdTrib))
parametros.Add(New ReportParameter("receptor_ResidenciaFiscal", objxml.receptor.ResidenciaFiscal))
parametros.Add(New ReportParameter("receptor_UsoCFDI", objxml.receptor.UsoCFDITexto))
parametros.Add(New ReportParameter("complemento_FechaTimbrado", objxml.complemento.FechaTimbrado))
parametros.Add(New ReportParameter("complemento_NoCertificadoSAT", objxml.complemento.NoCertificadoSAT))
parametros.Add(New ReportParameter("complemento_RfcProvCertif", objxml.complemento.RfcProvCertif))
parametros.Add(New ReportParameter("complemento_SelloCFD", objxml.complemento.SelloCFD))
parametros.Add(New ReportParameter("complemento_SelloSAT", objxml.complemento.SelloSAT))
parametros.Add(New ReportParameter("complemento_UUID", objxml.complemento.UUID))
parametros.Add(New ReportParameter("complemento_CadenaOriginal", objxml.complemento.CadenaOriginal))
Dim ds As New List(Of ReportDataSource)
Dim rdsTotales As ReportDataSource = New ReportDataSource()
Dim ltotales As List(Of utilValores) = New List(Of utilValores)()
ltotales.Add(New utilValores("Subtotal", objxml.comprobante.SubTotal.ToString("N2")))
If objxml.comprobante.Descuento > 0 Then
ltotales.Add(New utilValores("Descuento", objxml.comprobante.Descuento.ToString("N2")))
End If
For Each item As CFDIImpuesto In objxml.Impuestos
If item.Importe > 0 Then
Dim TasaOCuota As Decimal = 0
Decimal.TryParse(item.TasaOCuota, TasaOCuota)
ltotales.Add(New utilValores($"Impuestos {item.Tipo} {item.ImpuestoTexto} {(If(item.TipoFactor = "Tasa", (TasaOCuota * 100).ToString("N4"), item.TasaOCuota))} {(If(item.TipoFactor = "Tasa", "%", ""))}", item.Importe.ToString("N2")))
End If
Next
ltotales.Add(New utilValores("Total", objxml.comprobante.Total.ToString("N2")))
rdsTotales.Name = "dsTotales"
rdsTotales.Value = ltotales
ds.Add(rdsTotales)
Dim rds2 As ReportDataSource = New ReportDataSource()
Dim limagenes As List(Of utilImage) = New List(Of utilImage)()
limagenes.Add(New utilImage(cQr))
rds2.Name = "dsImagenes"
rds2.Value = limagenes
ds.Add(rds2)
Dim rdsrelacionados As ReportDataSource = New ReportDataSource()
rdsrelacionados.Name = "dsRelacionados"
rdsrelacionados.Value = objxml.cFDIRelacionados
ds.Add(rdsrelacionados)
Dim rds1 As ReportDataSource = New ReportDataSource()
rds1.Name = "dsConceptos"
rds1.Value = objxml.GetConceptosforpdf()
ds.Add(rds1)
Try
bytes = StreamPDF(context, rutaReporte, ds, parametros)
System.IO.File.Delete(RutaXml)
Catch ex As Exception
End Try
Return bytes
End Function
Public Function StreamPDF(ByVal context As HttpContext, RutaReporte As String, DataSource As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional MR As ReportViewer = Nothing) As Byte() Public Function StreamPDF(ByVal context As HttpContext, RutaReporte As String, DataSource As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional MR As ReportViewer = Nothing) As Byte()
'limpio ReportViwer 'limpio ReportViwer
Dim sw As New System.Diagnostics.Stopwatch() Dim sw As New System.Diagnostics.Stopwatch()
@@ -150,8 +269,8 @@ Public Class GenerarPDFFactura : Implements IHttpHandler
If EsProduccion Then If EsProduccion Then
Dim CveUsuario As Integer = 0 Dim CveUsuario As Integer = -1
Dim CveEmpresa As Integer = 0 Dim CveEmpresa As Integer = -1
Dim wsreport As New WSRDLC.WebServiceSoapClient Dim wsreport As New WSRDLC.WebServiceSoapClient
Dim params As New List(Of WSRDLC.ReportParameter) Dim params As New List(Of WSRDLC.ReportParameter)
@@ -175,6 +294,7 @@ Public Class GenerarPDFFactura : Implements IHttpHandler
Bytes = wsreport.StreamPDFBytes(RutaReporte, ds, params.ToArray(), NombreArchivo, Formato, CveEmpresa, CveUsuario) Bytes = wsreport.StreamPDFBytes(RutaReporte, ds, params.ToArray(), NombreArchivo, Formato, CveEmpresa, CveUsuario)
wsreport = Nothing wsreport = Nothing
params = Nothing params = Nothing
Else Else
If IsNothing(MR) Then MR = New ReportViewer If IsNothing(MR) Then MR = New ReportViewer
Try Try
@@ -364,8 +484,10 @@ Public Class GenerarPDFFactura : Implements IHttpHandler
Public Property Factura As FacturaWS Public Property Factura As FacturaWS
Public Property Cliente As ClienteWS Public Property Cliente As ClienteWS
Public Property Empresa As EmpresaWS Public Property Empresa As EmpresaWS
Public Property Timbrado As DatosSATWS
Public Property API_SALI As Boolean Public Property API_SALI As Boolean
Public Property Timbrado As DatosSATWS
Public Property XML As String
End Class End Class

View File

@@ -650,7 +650,7 @@
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UpReclasificarSubProyecto"> <asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UpReclasificarSubProyecto">
<ContentTemplate> <ContentTemplate>
<div class="row"> <div class="row">
<div class="col-md-1" style="width:100%"> <div class="col-md-1" style="width: 100%">
<asp:DropDownList ID="DdlAsignarProyecto" runat="server" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto"> <asp:DropDownList ID="DdlAsignarProyecto" runat="server" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
@@ -658,7 +658,7 @@
<%--<br runat="server" id="brProyectoSubProyecto" style="display:none"/>--%> <%--<br runat="server" id="brProyectoSubProyecto" style="display:none"/>--%>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-1" style="width:100%"> <div class="col-md-1" style="width: 100%">
<asp:DropDownList ID="DdlAsignaSubProyecto" runat="server" CssClass="form-control input-sm select2me" AutoPostBack="true" OnSelectedIndexChanged="DdlAsignaSubProyecto_SelectedIndexChanged" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto"> <asp:DropDownList ID="DdlAsignaSubProyecto" runat="server" CssClass="form-control input-sm select2me" AutoPostBack="true" OnSelectedIndexChanged="DdlAsignaSubProyecto_SelectedIndexChanged" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
@@ -1232,7 +1232,7 @@
<asp:Literal ID="LtlPS" runat="server" Text='<%# Eval("CodigoPS") %>'></asp:Literal> <asp:Literal ID="LtlPS" runat="server" Text='<%# Eval("CodigoPS") %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Serie" Visible="false" > <asp:TemplateField HeaderText="Serie" Visible="false">
<ItemTemplate> <ItemTemplate>
<asp:Literal ID="LtlSerie" Text='<%# Eval("Serie") %>' runat="server" /> <asp:Literal ID="LtlSerie" Text='<%# Eval("Serie") %>' runat="server" />
<asp:TextBox ID="TxtSerie" AutoPostBack="false" Text='<%# Eval("Serie") %>' Visible="false" runat="server" /> <asp:TextBox ID="TxtSerie" AutoPostBack="false" Text='<%# Eval("Serie") %>' Visible="false" runat="server" />
@@ -2559,7 +2559,7 @@
<asp:UpdatePanel ID="UpFacturar" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpFacturar" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:Button ID="BtnGuardar" CssClass="btn btn-primary " runat="server" ValidationGroup="GrpGuardar" data-toggle="confirmation" data-popout="true" data-original-title="<b>Verifique los datos para continuar</b>. <br/><br/> <center>¿Seguro de registrar el documento con la información actual?</center>" data-btn-ok-label="si" Text="Registrar Compra" /> <asp:Button ID="BtnGuardar" CssClass="btn btn-primary " runat="server" ValidationGroup="GrpGuardar" data-toggle="confirmation" data-popout="true" data-original-title="<b>Verifique los datos para continuar</b>. <br/><br/> <center>¿Seguro de registrar el documento con la información actual?</center>" data-btn-ok-label="si" Text="Registrar Compra" />
<asp:Button ID="BtnActualizar" CssClass="btn btn-success" runat="server" Text="Actualizar Compra" ValidationGroup="GrpGuardar" Visible="False" /> <asp:Button ID="BtnActualizar" CssClass="btn btn-success" runat="server" Text="Actualizar Compra" ValidationGroup="GrpGuardar" Visible="False" />
<br /> <br />
<br /> <br />
@@ -3895,9 +3895,9 @@
</h4> </h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div style="border: 1px solid black; width: 85%;"> <div style="border: 1px solid black; width: 85%;margin-left: 7.5%;display:block">
<asp:Panel ID="PnlContado" runat="server" Visible="False"> <asp:Panel ID="PnlContado" runat="server" Visible="False">
<asp:RadioButtonList ID="RBLContado" runat="server" RepeatDirection="Horizontal" AutoPostBack="True" RepeatColumns="3"> <asp:RadioButtonList ID="RBLContado" runat="server" RepeatDirection="Horizontal" Style="margin:auto" AutoPostBack="True" RepeatColumns="3">
<asp:ListItem Value="1" Selected="True">Bancos</asp:ListItem> <asp:ListItem Value="1" Selected="True">Bancos</asp:ListItem>
<asp:ListItem Value="3">Créditos</asp:ListItem> <asp:ListItem Value="3">Créditos</asp:ListItem>
<asp:ListItem Value="5">Acreedores</asp:ListItem> <asp:ListItem Value="5">Acreedores</asp:ListItem>
@@ -3909,14 +3909,14 @@
</div> </div>
<br /> <br />
<div style="text-align:center">
<asp:CheckBox runat="server" ID="ChkCreditoMultiple" AutoPostBack="true" Text="Multiple Crédito" />
</div>
<asp:CheckBox runat="server" ID="ChkCreditoMultiple" AutoPostBack="true" Text="Multiple Crédito" />
<br />
<br /> <br />
<div runat="server" id="DivReembolso"> <div runat="server" id="DivReembolso">
<asp:Panel ID="Panel1" CssClass="chequesie text-small" runat="server" Width="470px" Visible="true"> <asp:Panel ID="Panel1" CssClass="text-small" runat="server" Width="100%" Visible="true" BorderStyle="Solid" BorderColor="#6A92AD" BorderWidth="2px">
<div class="chequesie1"> <div class="chequesie1">
<div class="row"> <div class="row">
<div class="col-md-2" style="width: 90%; margin-left: 5%; margin-right: 5%; text-align: left"> <div class="col-md-2" style="width: 90%; margin-left: 5%; margin-right: 5%; text-align: left">
@@ -3926,15 +3926,16 @@
<div class="row"> <div class="row">
<div class="col-md-2" style="width: 90%; margin-left: 5%; margin-right: 5%; text-align: left"> <div class="col-md-2" style="width: 90%; margin-left: 5%; margin-right: 5%; text-align: left">
<asp:TextBox ID="TxtNumeroReembolso" runat="server" Width="100%" /> <asp:TextBox ID="TxtNumeroReembolso" runat="server" Width="100%" />
<%-- <asp:RequiredFieldValidator ID="RFVNumeroReembolso" runat="server" ControlToValidate="TxtNumeroReembolso" InitialValue="" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Numero de Reembolsoxx''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <%-- <asp:RequiredFieldValidator ID="RFVNumeroReembolso" runat="server" ControlToValidate="TxtNumeroReembolso" InitialValue="" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Numero de Reembolsoxx''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCENumeroReembolso" runat="server" HighlightCssClass="vco" TargetControlID="RFVNumeroReembolso" Width="300px"></ajax:ValidatorCalloutExtender>--%> <ajax:ValidatorCalloutExtender ID="VCENumeroReembolso" runat="server" HighlightCssClass="vco" TargetControlID="RFVNumeroReembolso" Width="300px"></ajax:ValidatorCalloutExtender>--%>
</div> </div>
</div> </div>
<br />
</div> </div>
<div class="chequesie2"> <div class="chequesie2">
<div class="row"> <div class="row">
<div class="col-md-2" style="width: 90%; margin-left: 4%; margin-right: 5%; text-align: left"> <div class="col-md-2" style="width: 90%; margin-left: 4%; margin-right: 5%; text-align: left">
<label>Caja Chica:</label> <asp:Label runat="server" ID="LblCheq">Caja Chica:</asp:Label>
</div> </div>
</div> </div>
<div id="DivPersonalReembolso" runat="server" visible="false" class="row"> <div id="DivPersonalReembolso" runat="server" visible="false" class="row">
@@ -3952,6 +3953,7 @@
</div> </div>
</div> </div>
<br/>
</div> </div>
</asp:Panel> </asp:Panel>
<table> <table>
@@ -4204,8 +4206,8 @@
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
<%--<RowStyle CssClass="TextoAlterno" /> <%--<RowStyle CssClass="TextoAlterno" />
<AlternatingRowStyle CssClass="TextoAlterno" /> <AlternatingRowStyle CssClass="TextoAlterno" />
<HeaderStyle CssClass="Titulos" />--%> <HeaderStyle CssClass="Titulos" />--%>
</asp:GridView> </asp:GridView>
<asp:HiddenField ID="HiddenField2" runat="server" ClientIDMode="Static" Value="0" /> <asp:HiddenField ID="HiddenField2" runat="server" ClientIDMode="Static" Value="0" />
</ContentTemplate> </ContentTemplate>
@@ -4260,7 +4262,7 @@
<asp:RequiredFieldValidator ID="RFVCreditoDetalle" runat="server" ControlToValidate="DdlCreditoDetalle" InitialValue="-1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Crédito''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpContado"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVCreditoDetalle" runat="server" ControlToValidate="DdlCreditoDetalle" InitialValue="-1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Crédito''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpContado"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECreditoDetalle" runat="server" HighlightCssClass="vco" TargetControlID="RFVCreditoDetalle" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCECreditoDetalle" runat="server" HighlightCssClass="vco" TargetControlID="RFVCreditoDetalle" Width="300px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>

Binary file not shown.

View File

@@ -8,6 +8,9 @@
Costo Indirecto Costo Indirecto
</asp:Content> </asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server"> <asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
<li>
<asp:LinkButton ID="LnkPdf" OnClick="LnkPdf_Click" runat="server"> <i class="fa fa-file-pdf-o" style="font-weight:bold;"></i> PDF</asp:LinkButton>
</li>
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content> </asp:Content>

View File

@@ -3,6 +3,8 @@ Option Strict On
Imports System.Data Imports System.Data
Imports Extensiones Imports Extensiones
Imports Microsoft.Reporting.WebForms
Partial Class Compras_Fletes Partial Class Compras_Fletes
Inherits ClsPaginas Inherits ClsPaginas
@@ -402,6 +404,30 @@ Partial Class Compras_Fletes
#End Region #End Region
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs)
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/Fletes.rdlc", UsuarioActual.Empresa.Ruta))
If Archivo.Exists Then
Dim ImporteGrid As Double = DtCompras.SUM("SubTotal")
Dim ImporteStr As String = LbOCImporte.Text.Split(" "c)(0)
Dim ImporteData As Double = ImporteStr.ToDouble()
Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("Folio", LblFolio.Text))
params.Add(New ReportParameter("Descripcion", TxtDescripcion.Text))
params.Add(New ReportParameter("Fecha", TxtFecha.Text))
params.Add(New ReportParameter("Modalidad", If(DdlModalidad.SelectedValue = "-1", "Por Orden de Compra", "Factura de Compra")))
params.Add(New ReportParameter("Proveedor", LbOCProveedor.Text))
params.Add(New ReportParameter("FolioModalidad", HLOCFolio.Text))
params.Add(New ReportParameter("Importe", (ImporteGrid + ImporteData).ToString()))
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Fletes.rdlc", DtCompras, params, String.Format("Costo Indirecto - {0}", LblFolio.Text), RDSName:="DataSet1")
End If
End Sub

View File

@@ -81,7 +81,7 @@
<table class="table Widthall "> <table class="table Widthall ">
<tr> <tr>
<td style="font-size: 14px; width: 20%; border-right: 3px solid white;"></td> <td style="font-size: 14px; width: 20%; border-right: 3px solid white;"></td>
<td class="dataTables_scrollHead text-center bold" style="font-size: 14px; width: 35%; border-right: 3px solid white;">Flete</td> <td class="dataTables_scrollHead text-center bold" style="font-size: 14px; width: 35%; border-right: 3px solid white;">Facturas de Costo Indirecto</td>
<td class="dataTables_scrollHead text-center bold" style="font-size: 14px; width: 45%; border-right: 3px solid white;">Documento (OC/Compra)</td> <td class="dataTables_scrollHead text-center bold" style="font-size: 14px; width: 45%; border-right: 3px solid white;">Documento (OC/Compra)</td>
</tr> </tr>
</table> </table>

View File

@@ -127,7 +127,7 @@
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<div> <div>
<asp:GridView ID="GvDatos" DataKeyNames="CvePS,PS,CodigoPS,Maximo,Minimo,CveAlmacen" CssClass="table table-striped table-hover Widthall ScrollAD" data-sort="true" runat="server" AutoGenerateColumns="False" GridLines="None"> <asp:GridView ID="GvDatos" DataKeyNames="CvePS,PS,CodigoPS,Maximo,Minimo,CveAlmacen,Almacen" CssClass="table table-striped table-hover Widthall ScrollAD" data-sort="true" runat="server" AutoGenerateColumns="False" GridLines="None">
<Columns> <Columns>
<asp:TemplateField ItemStyle-Width="10%" HeaderText="Código"> <asp:TemplateField ItemStyle-Width="10%" HeaderText="Código">
<ItemTemplate> <ItemTemplate>

View File

@@ -235,13 +235,19 @@ Partial Class Inventarios_RepMaximoMinimo
Dim CveAlmacen As Integer = GvRow.DataKey("CveAlmacen").ToString.ToEntero Dim CveAlmacen As Integer = GvRow.DataKey("CveAlmacen").ToString.ToEntero
Dim CvePS As Integer = GvRow.DataKey("CvePS").ToString.ToEntero Dim CvePS As Integer = GvRow.DataKey("CvePS").ToString.ToEntero
Dim strPS As String = GvRow.DataKey("PS").ToString() Dim strPS As String = GvRow.DataKey("PS").ToString()
Dim strAlmacen As String = GvRow.DataKey("Almacen").ToString()
Dim Maximo As String = GvRow.DataKey("Maximo").ToString Dim Maximo As String = GvRow.DataKey("Maximo").ToString
Dim Minimo As String = GvRow.DataKey("Minimo").ToString Dim Minimo As String = GvRow.DataKey("Minimo").ToString
DdlAlmacenModal.Enabled = False DdlAlmacenModal.Enabled = False
DdlPSModal.Enabled = False DdlPSModal.Enabled = False
DdlAlmacenModal.SelectedValue = CveAlmacen.ToString() DdlAlmacenModal.SelectedValue = "-1"
DdlAlmacenModal.SelectedValueExist(CveAlmacen.ToString())
If (DdlAlmacenModal.SelectedValue = "-1") Then
DdlAlmacenModal.Items.Add(New ListItem(strAlmacen, CveAlmacen.ToString()))
End If
DdlAlmacenModal.SelectedValueExist(CveAlmacen.ToString())
DdlPSModal.SelectedText = strPS DdlPSModal.SelectedText = strPS
DdlPSModal.SelectedValue = CvePS.ToString DdlPSModal.SelectedValue = CvePS.ToString
TxtMaximo.Text = Maximo TxtMaximo.Text = Maximo

View File

@@ -16,9 +16,6 @@
<li> <li>
<asp:LinkButton runat="server" ID="LkbNuevaVersion" OnClick="LkbNuevaVersion_Click" data-toggle="tooltip" data-placement="left" title="Agregar una nueva versión de este documento" Text="<i class='fa fa-plus'></i>Crear Nueva Versión"></asp:LinkButton> <asp:LinkButton runat="server" ID="LkbNuevaVersion" OnClick="LkbNuevaVersion_Click" data-toggle="tooltip" data-placement="left" title="Agregar una nueva versión de este documento" Text="<i class='fa fa-plus'></i>Crear Nueva Versión"></asp:LinkButton>
</li> </li>
<li>
<asp:LinkButton runat="server" ID="LbPruebas" OnClick="LbPruebas_Click" data-toggle="tooltip" data-placement="left" title="Agregar una nueva versión de este documento" Text="<i class='fa fa-plus'></i>Pruebas"></asp:LinkButton>
</li>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</asp:Content> </asp:Content>

View File

@@ -192,8 +192,9 @@ public partial class OI_DocumentoDetalle : ClsPaginas
TxtResponsable.Text = UsuarioActual.Nombre; TxtResponsable.Text = UsuarioActual.Nombre;
} }
private void CargarDocumentoYaExistente() private bool CargarDocumentoYaExistente()
{ {
bool SeCargoInfo = false;
ClsOIEventos ObjOI = new ClsOIEventos(); ClsOIEventos ObjOI = new ClsOIEventos();
if (ObjOI.GetDocumento(this.CveDocumento, UsuarioActual.CveEmpresa)) if (ObjOI.GetDocumento(this.CveDocumento, UsuarioActual.CveEmpresa))
{ {
@@ -214,9 +215,15 @@ public partial class OI_DocumentoDetalle : ClsPaginas
ArchivoAdjuntoNombre = Documento["ArchivoFisico"].ToString(); ArchivoAdjuntoNombre = Documento["ArchivoFisico"].ToString();
LkbDescargarArchivo.Text = ArchivoAdjuntoNombre; LkbDescargarArchivo.Text = ArchivoAdjuntoNombre;
DivDescargarArchivo.Visible = true; DivDescargarArchivo.Visible = true;
SeCargoInfo = true;
}else
{
this.CveDocumento = -1;
} }
} }
ObjOI.Dispose(); ObjOI.Dispose();
return SeCargoInfo;
} }
private void CargarUsuariosAutorizo() private void CargarUsuariosAutorizo()
@@ -320,13 +327,15 @@ public partial class OI_DocumentoDetalle : ClsPaginas
if (this.CveDocumento > 0) if (this.CveDocumento > 0)
{ {
EstatusMostrar(true); EstatusMostrar(true);
CargarDocumentoYaExistente(); if (CargarDocumentoYaExistente())
CargarUsuariosParticipantes(); {
CargarUsuariosAutorizo(); CargarUsuariosParticipantes();
ConfiguracionActualizar(); CargarUsuariosAutorizo();
ConfigurarGridUsuariosParticipantes(); ConfiguracionActualizar();
ConfigurarCamposDetalleSegunUsuario(); ConfigurarGridUsuariosParticipantes();
CargarMensajeNuevoEditado(); ConfigurarCamposDetalleSegunUsuario();
CargarMensajeNuevoEditado();
}
} }
ConfigurarSegunEstatus(); ConfigurarSegunEstatus();
} }
@@ -766,11 +775,4 @@ public partial class OI_DocumentoDetalle : ClsPaginas
UpCliente.Update(); UpCliente.Update();
} }
#endregion #endregion
protected void LbPruebas_Click(object sender,EventArgs e)
{
Cargar();
UpCliente.Update();
Alert("Documento actualizado");
}
} }

View File

@@ -43,17 +43,24 @@ public partial class OI_Documentos : ClsPaginas
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
string ArchivoFisico = GvRow.DataKey("ArchivoFisico"); string ArchivoFisico = GvRow.DataKey("ArchivoFisico");
string NombreArchivo = ArchivoFisico.Split('_')[1]; string CveDocumento = GvRow.DataKey("CveDocumento");
//string NombreArchivo = ArchivoFisico.Split('_')[1];
string Ruta = string.Format("{0}Empresas/{1}/DocumentosRepo/{2}", ModExtensiones.DirectorioBaseEmpresas, UsuarioActual.CveEmpresa, ArchivoFisico); string Ruta = string.Format("{0}Empresas/{1}/DocumentosRepo/{2}/{3}", ModExtensiones.DirectorioBaseEmpresas, UsuarioActual.CveEmpresa, CveDocumento, ArchivoFisico);
byte[] archivoBytes = File.ReadAllBytes(Ruta); if (File.Exists(Ruta))
{
byte[] archivoBytes = File.ReadAllBytes(Ruta);
HttpContext.Current.Response.Clear(); HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearContent(); HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ContentType = "application/octet-stream"; HttpContext.Current.Response.ContentType = "application/octet-stream";
HttpContext.Current.Response.AddHeader("Content-Disposition", String.Format("attachment;filename={0}", NombreArchivo)); HttpContext.Current.Response.AddHeader("Content-Disposition", String.Format("attachment;filename={0}", ArchivoFisico));
HttpContext.Current.Response.AddHeader("Content-Length", archivoBytes.Length.ToString()); HttpContext.Current.Response.AddHeader("Content-Length", archivoBytes.Length.ToString());
HttpContext.Current.Response.OutputStream.Write(archivoBytes, 0, archivoBytes.Length); HttpContext.Current.Response.OutputStream.Write(archivoBytes, 0, archivoBytes.Length);
HttpContext.Current.Response.End(); HttpContext.Current.Response.End();
}else
{
Alert("No se ha cargado Documento",ModExtensiones.TipoMensaje.MsgAdvertencia);
}
} }
} }

View File

@@ -569,7 +569,7 @@
<i></i> <i></i>
</div> </div>
<div class="form-group form-md-line-input input-iconright" runat="server" id="DivProyectosAsignado"> <div class="form-group form-md-line-input input-iconright" runat="server" id="DivProyectosAsignado">
<asp:Label runat="server" ID="LblProyectoAsignado" CssClass="form-line" for="<%= DdlProyectoAsignado.ClientID.ToString()%>" style="margin-bottom:unset;color:#888888">Proyecto: </asp:Label> <asp:Label runat="server" ID="LblProyectoAsignado" CssClass="form-line" for="<%= DdlProyectoAsignado.ClientID.ToString()%>" Style="margin-bottom: unset; color: #888888">Proyecto: </asp:Label>
<asp:DropDownList ID="DdlProyectoAsignado" runat="server" AppendDataBoundItems="True" AutoPostBack="True" DataTextField="Proyecto" DataValueField="CveProyecto" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar"> <asp:DropDownList ID="DdlProyectoAsignado" runat="server" AppendDataBoundItems="True" AutoPostBack="True" DataTextField="Proyecto" DataValueField="CveProyecto" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar">
<%-- <asp:ListItem Selected="True" Text="Sin Proyecto asignado" Value="-1"></asp:ListItem>--%> <%-- <asp:ListItem Selected="True" Text="Sin Proyecto asignado" Value="-1"></asp:ListItem>--%>
</asp:DropDownList> </asp:DropDownList>
@@ -577,7 +577,7 @@
<i></i> <i></i>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" ID="LblSubProyectoAsignado" CssClass="form-line" for="<%= DdlSubProyectoAsignado.ClientID.ToString()%>" style="margin-bottom:unset;color:#888888">SubProyecto: </asp:Label> <asp:Label runat="server" ID="LblSubProyectoAsignado" CssClass="form-line" for="<%= DdlSubProyectoAsignado.ClientID.ToString()%>" Style="margin-bottom: unset; color: #888888">SubProyecto: </asp:Label>
<asp:DropDownList ID="DdlSubProyectoAsignado" runat="server" AppendDataBoundItems="True" DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar"> <asp:DropDownList ID="DdlSubProyectoAsignado" runat="server" AppendDataBoundItems="True" DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin SubProyecto asignado" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Sin SubProyecto asignado" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
@@ -1285,7 +1285,7 @@
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtMailrecibonomina" runat="server" CausesValidation="true" CssClass="form-control input-sm"></asp:TextBox> <asp:TextBox ID="TxtMailrecibonomina" runat="server" CausesValidation="true" CssClass="form-control input-sm"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtMailrecibonomina" Text="Mail recibo nómina:"></asp:Label> <asp:Label runat="server" AssociatedControlID="TxtMailrecibonomina" Text="Mail recibo nómina:"></asp:Label>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
@@ -1317,42 +1317,42 @@
</div> </div>
<asp:Panel runat="server" ID="PnlSalarios" Visible="false"> <asp:Panel runat="server" ID="PnlSalarios" Visible="false">
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtSalarioDiario" Enabled ="false" runat="server" MaxLength="10"></asp:TextBox> <asp:TextBox CssClass="form-control" ID="TxtSalarioDiario" Enabled="false" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtSalarioDiario" Enabled ="false" Text="Salario Diario (SDD):"></asp:Label> <asp:Label runat="server" AssociatedControlID="TxtSalarioDiario" Enabled="false" Text="Salario Diario (SDD):"></asp:Label>
<%--<asp:CompareValidator ID="CVSalarioDiario" runat="server" ControlToValidate="TxtSalarioDiario" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%> <%--<asp:CompareValidator ID="CVSalarioDiario" runat="server" ControlToValidate="TxtSalarioDiario" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%>
<i></i> <i></i>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtSDI" Enabled ="false" runat="server" MaxLength="10"></asp:TextBox> <asp:TextBox CssClass="form-control" ID="TxtSDI" Enabled="false" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtSDI" Text="Salario Diario Integrado (SDI):"></asp:Label> <asp:Label runat="server" AssociatedControlID="TxtSDI" Text="Salario Diario Integrado (SDI):"></asp:Label>
<%--<asp:CompareValidator ID="CVSDI" runat="server" ControlToValidate="TxtSDI" CssClass="help-block errorimput" ErrorMessage="El campo <b>''SDI''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%> <%--<asp:CompareValidator ID="CVSDI" runat="server" ControlToValidate="TxtSDI" CssClass="help-block errorimput" ErrorMessage="El campo <b>''SDI''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%>
<i></i> <i></i>
</div> </div>
<div class="form-group form-md-line-input input-iconright" style="display: none;"> <div class="form-group form-md-line-input input-iconright" style="display: none;">
<asp:TextBox CssClass="form-control" ID="TxtSalarioDiarioPago" Enabled ="false" runat="server" MaxLength="10"></asp:TextBox> <asp:TextBox CssClass="form-control" ID="TxtSalarioDiarioPago" Enabled="false" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtSalarioDiarioPago" Text="Salario Diario de Pago:"></asp:Label> <asp:Label runat="server" AssociatedControlID="TxtSalarioDiarioPago" Text="Salario Diario de Pago:"></asp:Label>
<%--<asp:CompareValidator ID="CVSalario" runat="server" ControlToValidate="TxtSalarioDiarioPago" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario de Pago''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%> <%--<asp:CompareValidator ID="CVSalario" runat="server" ControlToValidate="TxtSalarioDiarioPago" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario de Pago''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%>
<i></i> <i></i>
</div> </div>
<asp:Panel runat="server" ID="pnlSalarioIMSS" CssClass="form-group form-md-line-input input-iconright"> <asp:Panel runat="server" ID="pnlSalarioIMSS" CssClass="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtSalarioCotizado" Enabled ="false" runat="server" MaxLength="10"></asp:TextBox> <asp:TextBox CssClass="form-control" ID="TxtSalarioCotizado" Enabled="false" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtSalarioCotizado" Text="Salario Diario IMSS:"></asp:Label> <asp:Label runat="server" AssociatedControlID="TxtSalarioCotizado" Text="Salario Diario IMSS:"></asp:Label>
<%--<asp:CompareValidator ID="CVSDT" runat="server" ControlToValidate="TxtSalarioCotizado" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario Cotizado''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%> <%--<asp:CompareValidator ID="CVSDT" runat="server" ControlToValidate="TxtSalarioCotizado" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Salario Diario Cotizado''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>--%>
<i></i> <i></i>
</asp:Panel>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtBono" runat="server" MaxLength="10" Text="0"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtBono" Text="Bono:"></asp:Label>
<asp:CompareValidator ID="CVBono" runat="server" ControlToValidate="TxtBono" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Bono''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<i></i>
</div>
</asp:Panel> </asp:Panel>
</asp:Panel>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtBono" runat="server" MaxLength="10" Text="0"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtBono" Text="Bono:"></asp:Label>
<asp:CompareValidator ID="CVBono" runat="server" ControlToValidate="TxtBono" CssClass="help-block errorimput" ErrorMessage="El campo <b>''Bono''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtNumDiasAguinaldo" runat="server" MaxLength="10"></asp:TextBox> <asp:TextBox CssClass="form-control" ID="TxtNumDiasAguinaldo" runat="server" MaxLength="10"></asp:TextBox>
@@ -3876,9 +3876,9 @@
<div runat="server" id="divSeccionAlmacen" class="frow" visible="false"> <div runat="server" id="divSeccionAlmacen" class="frow" visible="false">
<asp:Label Text="Sección: " runat="server" Style="width: 20%" /> <asp:Label Text="Sección: " runat="server" Style="width: 20%" />
<asp:DropDownList ID="DdlSeccionAlmacen" DataTextField="Seccion" AppendDataBoundItems="true" DataValueField="CveSeccion" Class="form-control input-sm select2me" Style="width: 50% !important" runat="server" CausesValidation="true"> <asp:DropDownList ID="DdlSeccionAlmacen" DataTextField="Seccion" AppendDataBoundItems="true" DataValueField="CveSeccion" Class="form-control input-sm select2me" Style="width: 50% !important" runat="server" CausesValidation="true">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
@@ -4681,7 +4681,7 @@
<div id="DVDescargaDocumentoParametrosModal" class="modal ADS fade" role="dialog"> <div id="DVDescargaDocumentoParametrosModal" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpdatePanel4" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpdatePanel4" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<div class="modal-content rowpadding"> <div class="modal-content rowpadding">
@@ -4712,11 +4712,11 @@
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ControlStyle-CssClass="template" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="275" HeaderText="Valor"> <asp:TemplateField ControlStyle-CssClass="template" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="275" HeaderText="Valor">
<ItemTemplate> <ItemTemplate>
<asp:TextBox ID="TxtParametro" runat="server" Text="" Width="150px" ValidationGroup="GrpDescargaFormato" ></asp:TextBox> <asp:TextBox ID="TxtParametro" runat="server" Text="" Width="150px" ValidationGroup="GrpDescargaFormato"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtParametro" runat="server" ControlToValidate="TxtParametro" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Parametro''</b> es necesario, por favor ingréselo." ValidationGroup="GrpDescargaFormato"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVTxtParametro" runat="server" ControlToValidate="TxtParametro" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Parametro''</b> es necesario, por favor ingréselo." ValidationGroup="GrpDescargaFormato"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="CERFVTxtParametro" runat="server" HighlightCssClass="vco" TargetControlID="RFVTxtParametro" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="CERFVTxtParametro" runat="server" HighlightCssClass="vco" TargetControlID="RFVTxtParametro" Width="300px"></ajax:ValidatorCalloutExtender>
</ItemTemplate> </ItemTemplate>

View File

@@ -48,27 +48,34 @@ Partial Class Sistemas_PopUpCambiaUsuario
Dim CveEmpresa As String = UsuarioActual.CveEmpresa.ToString() Dim CveEmpresa As String = UsuarioActual.CveEmpresa.ToString()
Dim splitedtext As String() = Request.Url.AbsoluteUri.Replace("http://", "").Replace("https://", "").Split("."c) Dim splitedtext As String() = Request.Url.AbsoluteUri.Replace("http://", "").Replace("https://", "").Split("."c)
If splitedtext.Length > 0 Then If Request.Url.AbsoluteUri.Contains("sig.agrojam.com.mx") Then
Select Case splitedtext(0).ToUpper() CveEmpresa = 119
Case "VSH" : CveEmpresa = "7"
Case "JAM" : CveEmpresa = "119"
Case "COMPUPROVEEDORES" : CveEmpresa = "72"
Case "DNDIFUSA" : CveEmpresa = "80"
End Select
End If End If
DdlEmpresa.DataBind()
DdlEmpresa.SelectedValue = CveEmpresa
'DdlRol.DataSource = GlobalDTRoles(DdlEmpresa.SelectedValue.ToEntero) If splitedtext.Length > 0 Then
'DdlRol.DataBind() Select Case splitedtext(0).ToUpper()
'DdlRol.Items.Insert(0, New ListItem("Todos", "-1")) Case "VSH" : CveEmpresa = "7"
Case "JAM" : CveEmpresa = "119"
Case "COMPUPROVEEDORES" : CveEmpresa = "72"
Case "DNDIFUSA" : CveEmpresa = "80"
Case "SOGO" : CveEmpresa = "8"
Case "BDH" : CveEmpresa = "140"
Case "ECONOLLANTAS" : CveEmpresa = "141"
End Select
End If
DdlEmpresa.DataBind()
DdlEmpresa.SelectedValue = CveEmpresa
TxtBusqueda.Attributes.Add("data-table", gvUsuarios.ClientID) 'DdlRol.DataSource = GlobalDTRoles(DdlEmpresa.SelectedValue.ToEntero)
'DdlRol.DataBind()
'DdlRol.Items.Insert(0, New ListItem("Todos", "-1"))
CargaUsuarios() TxtBusqueda.Attributes.Add("data-table", gvUsuarios.ClientID)
'LblUsuario.Text = usuarioactual.
End If CargaUsuarios()
'LblUsuario.Text = usuarioactual.
End If
End Sub End Sub

View File

@@ -151,7 +151,7 @@
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" AutoGenerateColumns="False" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" AutoGenerateColumns="False"
EmptyDataText="No se encontraron registros" data-sort="true" Width="99%" EmptyDataText="No se encontraron registros" data-sort="true" Width="99%"
DataKeyNames="CveCliente,CveMoneda,Saldo,Folio,CveVenta,NombreComercial,CveVentaAmortizacion,SerieFolioAmortizacion,SerieFolio,Total, DataKeyNames="CveCliente,CveMoneda,Saldo,Folio,CveVenta,NombreComercial,CveVentaAmortizacion,SerieFolioAmortizacion,SerieFolio,Total,
Fecha,FechaAmortizacion,SubTotal,SubTotalAmortizacion,ImporteAmortizacion,CveIE,Tipo,SaldoAcumulativo"> Fecha,FechaAmortizacion,SubTotal,SubTotalAmortizacion,ImporteAmortizacion,CveIE,Tipo,SaldoAcumulativo,CveSubProyecto">
<Columns> <Columns>
<asp:TemplateField> <asp:TemplateField>
<ItemTemplate> <ItemTemplate>

View File

@@ -359,16 +359,22 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas
} }
} }
} }
else
{
break;
}
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepNCXAplicar", 6, Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("CveMoneda").ToEntero(), TxtFecha.Text.ToDate(), "Saldo de NC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepNCXAplicar", 6, Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("CveMoneda").ToEntero(), TxtFecha.Text.ToDate(), "Saldo de NC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
if (!ObjConta.AddPrePolizasDetalle(CvePrePoliza, true, Saldo, Gv.DataKey("Folio").ToString(), ConceptoContable2, TxtConcepto.Text, TxtFecha.Text.ToDate(), IdCtaContable, -1, CveIE, CveVenta, CveCliente: Gv.DataKey("CveCliente").ToEntero(), ImporteMX: Saldo, CveCuenta: CveCuenta)) if (!ObjConta.AddPrePolizasDetalle(CvePrePoliza, true, Saldo, Gv.DataKey("Folio").ToString(), ConceptoContable2, TxtConcepto.Text, TxtFecha.Text.ToDate(), IdCtaContable, -1, CveIE, CveVenta, CveCliente: Gv.DataKey("CveCliente").ToEntero(), ImporteMX: Saldo, CveCuenta: CveCuenta))
{ {
MsgError = "Ocurrio un error al saldar el movimiento"; MsgError = "Ocurrio un error al saldar el movimiento";
break;
} }
if (!ObjConta.AddPrePolizasDetalle(CvePrePoliza, true, Gv.DataKey("Saldo").ToDecimal(), Gv.DataKey("Folio").ToString(), 78, TxtConcepto.Text, TxtFecha.Text.ToDate(), UsuarioActual.Empresa.IdCuentaOtrosIngresos, -1, CveIE, CveVenta, ImporteMX: Gv.DataKey("Saldo").ToDecimal(), CveCuenta: -1)) if (!ObjConta.AddPrePolizasDetalle(CvePrePoliza, true, Gv.DataKey("Saldo").ToDecimal(), Gv.DataKey("Folio").ToString(), 78, TxtConcepto.Text, TxtFecha.Text.ToDate(), UsuarioActual.Empresa.IdCuentaOtrosIngresos, -1, CveIE, CveVenta, ImporteMX: Gv.DataKey("Saldo").ToDecimal(), CveCuenta: -1, CveSubProyecto: Gv.DataKey("CveSubProyecto").ToEntero()))
{ {
MsgError = "Ocurrio un error al saldar el movimiento"; MsgError = "Ocurrio un error al saldar el movimiento";
break;
} }
} }

View File

@@ -16656,6 +16656,7 @@ Partial Class Ventas
' End If ' End If
'End If 'End If
'Creamos el movimiento 'Creamos el movimiento
Dim CveMovimientoInventario As Integer = ObjInventario.AddMovimiento(CveAlmacen, ConceptoEntrada, CveMoneda, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1, Dim CveMovimientoInventario As Integer = ObjInventario.AddMovimiento(CveAlmacen, ConceptoEntrada, CveMoneda, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1,
CveMovimientoRelacionado:=CveMovimientoRelacionado, Modulo:="Vta/E4") CveMovimientoRelacionado:=CveMovimientoRelacionado, Modulo:="Vta/E4")
@@ -16680,7 +16681,7 @@ Partial Class Ventas
Dim Serie As String = MovDet("Serie").ToString() Dim Serie As String = MovDet("Serie").ToString()
Dim Lote As String = MovDet("Lote").ToString() Dim Lote As String = MovDet("Lote").ToString()
Dim FechaCaducidad As Date = MovDet("FechaCaducidad").ToString.ToDate Dim FechaCaducidad As Date = MovDet("FechaCaducidad").ToString.ToDate
Dim CveSeccionAlmacen As Integer = MovDet("CveSeccionAlmacen").ToString.ToEntero Dim CveSeccionAlmacen As Integer = -3 'SE DEBE CALCULAR LA SECCION EL EN TRIGGER DE INVENTARIOS
Dim Consec As Integer = DtRemisionesTmpDT.FiltroPrimeroValor("Consec", $"CveVentaDetalle = {MovDet("CveVentaDetalle").ToString()}").ToEntero() Dim Consec As Integer = DtRemisionesTmpDT.FiltroPrimeroValor("Consec", $"CveVentaDetalle = {MovDet("CveVentaDetalle").ToString()}").ToEntero()
'COMIENZA: VENTADETALLE 'COMIENZA: VENTADETALLE
@@ -22703,7 +22704,6 @@ Partial Class Ventas
End If End If
End Sub End Sub
Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1) As DataTable Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1) As DataTable
Dim Total As Decimal = 0, SubTotal As Decimal = 0, Saldo As Decimal = 0 Dim Total As Decimal = 0, SubTotal As Decimal = 0, Saldo As Decimal = 0
@@ -22750,9 +22750,13 @@ Partial Class Ventas
Dim Porcentaje As Decimal = ((Importe * 100) / ImporteReferencia) / 100 Dim Porcentaje As Decimal = ((Importe * 100) / ImporteReferencia) / 100
Dim FiltroStr As String = "" Dim FiltroStr As String = ""
Dim importePuTemp As Decimal = 0 Dim importePuTemp As Decimal = 0
Dim TotalImpuestosLocales As Decimal = 0 Dim TotalImpuestosLocalesVentaOriginal As Decimal = 0
Dim TotalImpuestosLocalesRecalculado As Decimal = 0
'CALCULA LO EQUIVALENTE EN IMPUSTOS LOCALES
If TmpDTImpuestos IsNot Nothing AndAlso TmpDTImpuestos.Rows.Count > 0 Then If TmpDTImpuestos IsNot Nothing AndAlso TmpDTImpuestos.Rows.Count > 0 Then
TotalImpuestosLocales = TmpDTImpuestos.SUM("Importe").ToDecimal() TotalImpuestosLocalesVentaOriginal = TmpDTImpuestos.SUM("Importe").ToDecimal()
TotalImpuestosLocalesRecalculado = TotalImpuestosLocalesVentaOriginal * Porcentaje
End If End If
For Each Dr As DataRow In DtImpuestosLocal.Rows For Each Dr As DataRow In DtImpuestosLocal.Rows
@@ -22760,7 +22764,7 @@ Partial Class Ventas
importePuTemp = (Porcentaje * (TmpDT.SUM("TotalImporte", FiltroStr).ToDecimal() - TmpDT.SUM("Descuento", FiltroStr).ToDecimal())) importePuTemp = (Porcentaje * (TmpDT.SUM("TotalImporte", FiltroStr).ToDecimal() - TmpDT.SUM("Descuento", FiltroStr).ToDecimal()))
If Not AplicaImpuestosLocales Then If Not AplicaImpuestosLocales Then
importePuTemp = importePuTemp - TotalImpuestosLocales importePuTemp = importePuTemp - TotalImpuestosLocalesVentaOriginal
End If End If
Dr("ImporteTotal") = importePuTemp.RoundSQL(2) Dr("ImporteTotal") = importePuTemp.RoundSQL(2)
@@ -22780,9 +22784,11 @@ Partial Class Ventas
Next Next
Dim importeNC = (DtImpuestosLocal.SUMD("ImporteTotal") + DtImpuestosLocal.SUMD("ImporteIVA") + DtImpuestosLocal.SUMD("ImporteIEPS") - DtImpuestosLocal.SUMD("ImporteRetIVA") - DtImpuestosLocal.SUMD("ImporteRetISR")) Dim importeNC = (DtImpuestosLocal.SUMD("ImporteTotal") + DtImpuestosLocal.SUMD("ImporteIVA") + DtImpuestosLocal.SUMD("ImporteIEPS") - DtImpuestosLocal.SUMD("ImporteRetIVA") - DtImpuestosLocal.SUMD("ImporteRetISR"))
If AplicaImpuestosLocales Then If AplicaImpuestosLocales Then
Importe = Importe + TotalImpuestosLocales Importe = Importe + TotalImpuestosLocalesRecalculado
End If End If
'codigo para ajuste de centavo, si el importe total no cuadra con los totales 'codigo para ajuste de centavo, si el importe total no cuadra con los totales
Dim difTmp As Decimal = Importe - importeNC Dim difTmp As Decimal = Importe - importeNC
@@ -22800,7 +22806,6 @@ Partial Class Ventas
'CargaNCDT(CveVentaNC, Importe.ToDecimal) 'CargaNCDT(CveVentaNC, Importe.ToDecimal)
Return DtImpuestosLocal Return DtImpuestosLocal
End Function End Function
Private Sub AgregaTempDT(ByRef TmpDT As DataTable, CvePS As Integer, PS As String, Codigo As String, CodigoPS As String, CveTipoPS As Integer, CveTipoInvPS As Integer, CveUM As Integer, UM As String, Private Sub AgregaTempDT(ByRef TmpDT As DataTable, CvePS As Integer, PS As String, Codigo As String, CodigoPS As String, CveTipoPS As Integer, CveTipoInvPS As Integer, CveUM As Integer, UM As String,
CveClasificacion As Integer, Clasificacion As String, CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String, CveClasificacion As Integer, Clasificacion As String, CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String,
Obs As String, Cantidad As Double, PU As Double, PorcentajeIVA As Double, ImporteIVA As Double, PorcentajeRetIVA As Double, ImporteRetIVA As Double, Obs As String, Cantidad As Double, PU As Double, PorcentajeIVA As Double, ImporteIVA As Double, PorcentajeRetIVA As Double, ImporteRetIVA As Double,

View File

@@ -88,6 +88,10 @@