RepServiciosDomicilio, asignar ordenes, Compras autoseleccion de alamcenes
This commit is contained in:
@@ -1594,6 +1594,8 @@ Partial Class Compras_Compras
|
|||||||
NCSeleccionFacturasRelacionadas(UUIDSList)
|
NCSeleccionFacturasRelacionadas(UUIDSList)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'SE OCUPAN AFUERA DEL POSTBACK ??
|
'SE OCUPAN AFUERA DEL POSTBACK ??
|
||||||
@@ -10768,6 +10770,19 @@ Partial Class Compras_Compras
|
|||||||
'e.Row.FCDropDownList("ddlEAlmacen").SelectedValue = If(e.Row.DBCampo("CveAlmacen").ToEntero <= 0, "-1", e.Row.DBCampo("CveAlmacen"))
|
'e.Row.FCDropDownList("ddlEAlmacen").SelectedValue = If(e.Row.DBCampo("CveAlmacen").ToEntero <= 0, "-1", e.Row.DBCampo("CveAlmacen"))
|
||||||
If UsuarioActual.Empresa.UsaAC Then e.Row.FCDropDownList("ddlEAlmacen").Enabled = False
|
If UsuarioActual.Empresa.UsaAC Then e.Row.FCDropDownList("ddlEAlmacen").Enabled = False
|
||||||
|
|
||||||
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(567) = "1" Then
|
||||||
|
If e.Row.FCDropDownList("ddlEAlmacen").Items.Count > 1 Then
|
||||||
|
|
||||||
|
e.Row.FCDropDownList("ddlEAlmacen").SelectedIndex = 1
|
||||||
|
e.Row.FCCheckBox("cbInv").Checked = True
|
||||||
|
|
||||||
|
ddlAlmacenConsignacion_SelectedIndexChanged(e.Row.FCDropDownList("ddlEAlmacen"), Nothing)
|
||||||
|
CambiaTotalDevengar(Nothing, Nothing)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
If Not e.Row.DBCampo("CveMetodoInventario").ToString = "5" Then
|
If Not e.Row.DBCampo("CveMetodoInventario").ToString = "5" Then
|
||||||
e.Row.FCTextBox("TbCantidad").Attributes.Add("onblur", String.Format("ValidarCantidad(this,{0})", If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))))
|
e.Row.FCTextBox("TbCantidad").Attributes.Add("onblur", String.Format("ValidarCantidad(this,{0})", If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))))
|
||||||
e.Row.FCTextBox("TbCantidad").Text = If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))
|
e.Row.FCTextBox("TbCantidad").Text = If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))
|
||||||
|
|||||||
@@ -926,7 +926,7 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value xml:space="preserve"> </Value>
|
<Value xml:space="preserve"> </Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontStyle>Normal</FontStyle>
|
<FontStyle>Normal</FontStyle>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
@@ -980,6 +980,9 @@
|
|||||||
<Left>0.01938in</Left>
|
<Left>0.01938in</Left>
|
||||||
<Height>0.64213in</Height>
|
<Height>0.64213in</Height>
|
||||||
<Width>7.82181in</Width>
|
<Width>7.82181in</Width>
|
||||||
|
<Visibility>
|
||||||
|
<Hidden>true</Hidden>
|
||||||
|
</Visibility>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
<Style>None</Style>
|
<Style>None</Style>
|
||||||
@@ -1394,7 +1397,7 @@
|
|||||||
<Width>20.06179cm</Width>
|
<Width>20.06179cm</Width>
|
||||||
<ZIndex>10</ZIndex>
|
<ZIndex>10</ZIndex>
|
||||||
<Visibility>
|
<Visibility>
|
||||||
<Hidden>= (Parameters!AplicaPagare.Value="0" OrElse Parameters!AplicaPagare.Value="")</Hidden>
|
<Hidden>true</Hidden>
|
||||||
</Visibility>
|
</Visibility>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
@@ -3259,7 +3262,7 @@
|
|||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>Éste documento es una representacion impresa de un CFDi</Value>
|
<Value>Éste documento es una representacion impresa de un CFDi </Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>9pt</FontSize>
|
<FontSize>9pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
<%@ Page Title="Reporte Servicio a Domicilio" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepServicioDomicilio.aspx.vb" Inherits="OS_RepServicioDomicilio" %>
|
<%@ Page Title="Reporte Servicio a Domicilio" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepServicioDomicilio.aspx.vb" Inherits="OS_RepServicioDomicilio" %>
|
||||||
|
|
||||||
|
<%@ Register Assembly="TimePicker" Namespace="MKB.TimePicker" TagPrefix="cc1" %>
|
||||||
|
|
||||||
|
|
||||||
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
|
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
|
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
|
||||||
@@ -87,19 +90,6 @@
|
|||||||
height: 150px !important;
|
height: 150px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*#overlay a:hover {
|
|
||||||
position: fixed;
|
|
||||||
display: none;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
background-color: rgba(0,0,0,0.5);
|
|
||||||
z-index: 2;
|
|
||||||
cursor: pointer;
|
|
||||||
}*/
|
|
||||||
|
|
||||||
|
|
||||||
#moopio a {
|
#moopio a {
|
||||||
@@ -137,8 +127,6 @@
|
|||||||
</asp:Content>
|
</asp:Content>
|
||||||
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
|
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
|
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
|
||||||
<ContentTemplate>
|
<ContentTemplate>
|
||||||
<div class="portlet solid grey-cascade portlet-filter">
|
<div class="portlet solid grey-cascade portlet-filter">
|
||||||
@@ -161,8 +149,6 @@
|
|||||||
<asp:DropDownList ID="DdlSubProyecto" ClientIDMode="Static" DataValueField="CveSubProyecto" DataTextField="SubProyecto" runat="server" CssClass="form-control select2me" Width="150px" AppendDataBoundItems="true"></asp:DropDownList>
|
<asp:DropDownList ID="DdlSubProyecto" ClientIDMode="Static" DataValueField="CveSubProyecto" DataTextField="SubProyecto" runat="server" CssClass="form-control select2me" Width="150px" AppendDataBoundItems="true"></asp:DropDownList>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -177,6 +163,24 @@
|
|||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
|
||||||
|
<asp:UpdatePanel runat="server" ID="UpOrdenesSinAsignar" UpdateMode="Conditional" >
|
||||||
|
<ContentTemplate>
|
||||||
|
<div class="row" runat="server" id="DVOSPendientes" visible="false">
|
||||||
|
<div class="col-md-1">
|
||||||
|
Orden de Servicio:
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
<asp:DropDownList runat="server" ID="DdlOrdenesSinAsignar" CssClass="select2me" DataValueField="CveOSDetalle" DataTextField="ConceptoDdl" Width="100%"></asp:DropDownList>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-2">
|
||||||
|
<asp:LinkButton runat="server" ID="LnkOrdenesSinAsignarMostarModal" CssClass="Texto" OnClick="LnkOrdenesSinAsignarMostarModal_Click">Asignar</asp:LinkButton>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ContentTemplate>
|
||||||
|
</asp:UpdatePanel>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12 col-sm-12">
|
<div class="col-md-12 col-sm-12">
|
||||||
|
|
||||||
@@ -411,6 +415,99 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div id="DVModalOSAsginar" class="modal ADS fade" role="dialog">
|
||||||
|
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UpModalOSAsginar" UpdateMode="Conditional">
|
||||||
|
<ContentTemplate>
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header ">
|
||||||
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||||
|
<h4 class="modal-title">Asignar Orden de Servicio</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body" >
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group form-md-line-input">
|
||||||
|
<asp:Label runat="server" ID="LblModalCliente" Text="" CssClass="form-control"></asp:Label>
|
||||||
|
<label for="<%= LblModalCliente.ClientID.ToString()%>">Cliente: </label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group form-md-line-input">
|
||||||
|
<asp:Label runat="server" ID="LblModalConcepto" Text="" CssClass="form-control"></asp:Label>
|
||||||
|
<label for="<%= LblModalConcepto.ClientID.ToString()%>">Concepto: </label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group form-md-line-input">
|
||||||
|
<asp:Label runat="server" ID="LblModalSubProyecto" Text="" CssClass="form-control"></asp:Label>
|
||||||
|
<label for="<%= LblModalSubProyecto.ClientID.ToString()%>"><asp:Label runat="server" ID="LblModalSubProyectoLabel"></asp:Label>: </label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group form-md-line-input">
|
||||||
|
<asp:DropDownList ID="DdlTecnicoAsignar" Width="100%" runat="server" CssClass="form-control select2me" DataTextField="Nombre" Visible="true" DataValueField="CveUsuario">
|
||||||
|
</asp:DropDownList>
|
||||||
|
|
||||||
|
<asp:RequiredFieldValidator ID="RfvDdlTecnicoAsignar" InitialValue="-1" runat="server" ControlToValidate="DdlTecnicoAsignar" Display="None"
|
||||||
|
ErrorMessage="El campo <b>''Técnico''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
|
||||||
|
<ajax:ValidatorCalloutExtender ID="VCERfvDdlTecnicoAsignar" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlTecnicoAsignar" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||||
|
|
||||||
|
<label for="<%= DdlTecnicoAsignar.ClientID.ToString()%>">Técnico: </label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="width:150px">
|
||||||
|
<asp:TextBox ID="TxtModalFechaOS" CssClass="form-control" runat="server" Width="150px"></asp:TextBox>
|
||||||
|
<span class="input-group-btn " style="position: absolute; right: 41px; top: 9px;">
|
||||||
|
<asp:LinkButton ID="LnkTxtModalFechaOS" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||||
|
</span>
|
||||||
|
<ajax:MaskedEditExtender ID="METxtModalFechaOS" runat="server" TargetControlID="TxtModalFechaOS" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||||
|
<ajax:CalendarExtender runat="server" ID="CETxtModalFechaOS" TargetControlID="TxtModalFechaOS" PopupButtonID="LnkTxtModalFechaOS" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||||
|
|
||||||
|
<asp:RequiredFieldValidator ID="RfvTxtModalFechaOS" runat="server" ControlToValidate="TxtModalFechaOS" Display="None"
|
||||||
|
ErrorMessage="El campo <b>''Fecha''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
|
||||||
|
<ajax:ValidatorCalloutExtender ID="VceRfvTxtModalFechaOS" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtModalFechaOS" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||||
|
|
||||||
|
<label for="<%= TxtModalFechaOS.ClientID.ToString()%>">Fecha: </label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group form-md-line-input">
|
||||||
|
<cc1:TimeSelector ID="TSTimeSelector" runat="server" DisplaySeconds="false" DisplayButtons="false" Visible="true" CssClass="form-control" Font-Size="13pt"></cc1:TimeSelector>
|
||||||
|
<label for="<%= TSTimeSelector.ClientID.ToString()%>">Hora Servicio: </label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<asp:LinkButton runat="server" ID="LnkModalAsignar" CssClass="btn btn-success" Text="Asignar" OnClick="LnkModalAsignar_Click" ValidationGroup="GrpAsignar" ></asp:LinkButton>
|
||||||
|
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ContentTemplate>
|
||||||
|
</asp:UpdatePanel>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
|
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
|
||||||
@@ -454,10 +551,7 @@
|
|||||||
|
|
||||||
function selectDate(start, end, allDay) {
|
function selectDate(start, end, allDay) {
|
||||||
$('#ModalAgenda').modal('show');
|
$('#ModalAgenda').modal('show');
|
||||||
$("#SpanTituloAgenda").html("Agregar Evento");;
|
$("#SpanTituloAgenda").html("Agregar Evento");
|
||||||
|
|
||||||
//$("#< %=BtnGuardar.ClientID%>").val('Guardar');
|
|
||||||
//$("#< %=BtnEliminar.ClientID%>").css("display", "none");
|
|
||||||
|
|
||||||
$("#HdnCveEvento").val(-1);
|
$("#HdnCveEvento").val(-1);
|
||||||
|
|
||||||
@@ -490,9 +584,7 @@
|
|||||||
|
|
||||||
function updateEvent(event, element) {
|
function updateEvent(event, element) {
|
||||||
$('#ModalAgenda').modal('show');
|
$('#ModalAgenda').modal('show');
|
||||||
//$("#SpanTituloAgenda").html("Actualizar Evento");;
|
|
||||||
//$("#< %=BtnGuardar.ClientID%>").val('Actualizar');
|
|
||||||
//$("#< %=BtnEliminar.ClientID%>").css("display", "");
|
|
||||||
|
|
||||||
$("#DivDescripcionUpdate").css("display", "block");
|
$("#DivDescripcionUpdate").css("display", "block");
|
||||||
$("#<%=TxtDescripcionAgenda.ClientID%>").css("display", "none");
|
$("#<%=TxtDescripcionAgenda.ClientID%>").css("display", "none");
|
||||||
@@ -521,7 +613,6 @@
|
|||||||
|
|
||||||
//Identifica el tipo de Fecha Termino de la Recurrencia
|
//Identifica el tipo de Fecha Termino de la Recurrencia
|
||||||
if (event.recurrenciafin == 0) {
|
if (event.recurrenciafin == 0) {
|
||||||
//$("#RBSinFechaFinUpdate").prop('checked', true);
|
|
||||||
$("#TxtFrecuencia").val('0');
|
$("#TxtFrecuencia").val('0');
|
||||||
} else if (!isNaN(event.recurrenciafin)) {
|
} else if (!isNaN(event.recurrenciafin)) {
|
||||||
$("#RBNumeroOcurrencias").prop('checked', true);
|
$("#RBNumeroOcurrencias").prop('checked', true);
|
||||||
@@ -776,7 +867,7 @@
|
|||||||
select: selectDate,
|
select: selectDate,
|
||||||
editable: true,
|
editable: true,
|
||||||
minTime: "08:00:00",
|
minTime: "08:00:00",
|
||||||
maxTime: "17:00:00",
|
maxTime: "19:00:00",
|
||||||
events: {
|
events: {
|
||||||
url: '/Ashx/CargaEventos.ashx',
|
url: '/Ashx/CargaEventos.ashx',
|
||||||
type: 'GET',
|
type: 'GET',
|
||||||
|
|||||||
@@ -5,6 +5,8 @@ Imports Extensiones
|
|||||||
Imports System.Data
|
Imports System.Data
|
||||||
Imports Microsoft.Reporting.WebForms
|
Imports Microsoft.Reporting.WebForms
|
||||||
Imports System.Web.Services
|
Imports System.Web.Services
|
||||||
|
Imports Telerik.Web.UI
|
||||||
|
Imports APP_Code_CSharp
|
||||||
|
|
||||||
Partial Class OS_RepServicioDomicilio
|
Partial Class OS_RepServicioDomicilio
|
||||||
Inherits ClsPaginas
|
Inherits ClsPaginas
|
||||||
@@ -59,6 +61,126 @@ Partial Class OS_RepServicioDomicilio
|
|||||||
End Property
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
Private Property DT_OSSubProyectos As DataTable
|
||||||
|
Get
|
||||||
|
If ViewState("DT_OSSubProyectos") Is Nothing Then
|
||||||
|
ViewState("DT_OSSubProyectos") = New DataTable
|
||||||
|
End If
|
||||||
|
Return DirectCast(ViewState("DT_OSSubProyectos"), DataTable)
|
||||||
|
|
||||||
|
End Get
|
||||||
|
|
||||||
|
Set(value As DataTable)
|
||||||
|
ViewState("DT_OSSubProyectos") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Private Property DT_OSNoAsignadas As DataTable
|
||||||
|
Get
|
||||||
|
If ViewState("DT_OSNoAsignadas") Is Nothing Then
|
||||||
|
ViewState("DT_OSNoAsignadas") = New DataTable
|
||||||
|
End If
|
||||||
|
Return DirectCast(ViewState("DT_OSNoAsignadas"), DataTable)
|
||||||
|
|
||||||
|
End Get
|
||||||
|
|
||||||
|
Set(value As DataTable)
|
||||||
|
ViewState("DT_OSNoAsignadas") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Private Property CveOSDetalleAsignar As Integer
|
||||||
|
Get
|
||||||
|
If ViewState("CveOSDetalleAsignar") Is Nothing Then
|
||||||
|
ViewState("CveOSDetalleAsignar") = -1
|
||||||
|
End If
|
||||||
|
Return ViewState("CveOSDetalleAsignar").ToString.ToEntero
|
||||||
|
End Get
|
||||||
|
Set(value As Integer)
|
||||||
|
ViewState("CveOSDetalleAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Private Property CveSubProyectoAsignar As Integer
|
||||||
|
Get
|
||||||
|
If ViewState("CveSubProyectoAsignar") Is Nothing Then
|
||||||
|
ViewState("CveSubProyectoAsignar") = -1
|
||||||
|
End If
|
||||||
|
Return ViewState("CveSubProyectoAsignar").ToString.ToEntero
|
||||||
|
End Get
|
||||||
|
Set(value As Integer)
|
||||||
|
ViewState("CveSubProyectoAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Private Property CveOSAsignar As Integer
|
||||||
|
Get
|
||||||
|
If ViewState("CveOSAsignar") Is Nothing Then
|
||||||
|
ViewState("CveOSAsignar") = -1
|
||||||
|
End If
|
||||||
|
Return ViewState("CveOSAsignar").ToString.ToEntero
|
||||||
|
End Get
|
||||||
|
Set(value As Integer)
|
||||||
|
ViewState("CveOSAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
Private Property FolioAsignar As String
|
||||||
|
Get
|
||||||
|
If ViewState("FolioAsignar") Is Nothing Then
|
||||||
|
ViewState("FolioAsignar") = ""
|
||||||
|
End If
|
||||||
|
Return ViewState("FolioAsignar").ToString
|
||||||
|
End Get
|
||||||
|
Set(value As String)
|
||||||
|
ViewState("FolioAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
Private Property ConceptoAsignar As String
|
||||||
|
Get
|
||||||
|
If ViewState("ConceptoAsignar") Is Nothing Then
|
||||||
|
ViewState("ConceptoAsignar") = ""
|
||||||
|
End If
|
||||||
|
Return ViewState("ConceptoAsignar").ToString
|
||||||
|
End Get
|
||||||
|
Set(value As String)
|
||||||
|
ViewState("ConceptoAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
Private Property ClienteAsignar As String
|
||||||
|
Get
|
||||||
|
If ViewState("ClienteAsignar") Is Nothing Then
|
||||||
|
ViewState("ClienteAsignar") = ""
|
||||||
|
End If
|
||||||
|
Return ViewState("ClienteAsignar").ToString
|
||||||
|
End Get
|
||||||
|
Set(value As String)
|
||||||
|
ViewState("ClienteAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
Private Property SubProyectoAsignar As String
|
||||||
|
Get
|
||||||
|
If ViewState("SubProyectoAsignar") Is Nothing Then
|
||||||
|
ViewState("SubProyectoAsignar") = ""
|
||||||
|
End If
|
||||||
|
Return ViewState("SubProyectoAsignar").ToString
|
||||||
|
End Get
|
||||||
|
Set(value As String)
|
||||||
|
ViewState("SubProyectoAsignar") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||||
@@ -66,12 +188,14 @@ Partial Class OS_RepServicioDomicilio
|
|||||||
|
|
||||||
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyectoEtiqueta)
|
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyectoEtiqueta)
|
||||||
LblSubProyectoFiltro.Text = LblSubProyectoEtiqueta.Text
|
LblSubProyectoFiltro.Text = LblSubProyectoEtiqueta.Text
|
||||||
|
LblModalSubProyectoLabel.Text = LblSubProyectoEtiqueta.Text
|
||||||
DdlTecnico.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
|
CargaTecnicos()
|
||||||
DdlTecnico.DataBind()
|
ConsultaOrdenesServiciosNoAsignadas()
|
||||||
DdlTecnico.Items.Insert(0, New ListItem("Todos", "-1"))
|
CargaOrdenesServiciosNoAsignadas()
|
||||||
|
CargaTecnicosAsignar()
|
||||||
|
|
||||||
InicializaCalendar()
|
InicializaCalendar()
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -115,6 +239,46 @@ Partial Class OS_RepServicioDomicilio
|
|||||||
|
|
||||||
ObjEventos.Dispose()
|
ObjEventos.Dispose()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Sub CargaTecnicos()
|
||||||
|
DdlTecnico.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
|
||||||
|
DdlTecnico.DataBind()
|
||||||
|
DdlTecnico.Items.Insert(0, New ListItem("Todos", "-1"))
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Sub CargaTecnicosAsignar()
|
||||||
|
|
||||||
|
|
||||||
|
Dim ObjOS As New ClsOS
|
||||||
|
Dim TecnicosSubProyectos As New DataTable
|
||||||
|
Dim TecnicosResultado As New DataTable
|
||||||
|
|
||||||
|
If ObjOS.GetSubProyectosEstatusInicial(-1, 3, UsuarioActual.CveEmpresa) Then
|
||||||
|
TecnicosSubProyectos = ObjOS.DtResultados
|
||||||
|
End If
|
||||||
|
|
||||||
|
For Each SubProyecto As DataRow In DT_OSSubProyectos.Rows
|
||||||
|
Dim TecnicosSubProyectoAux As DataTable = TecnicosSubProyectos.FiltraParametros(String.Format("SubProyecto = '{0}'", SubProyecto.Item("SubProyecto")))
|
||||||
|
If TecnicosSubProyectoAux.Rows.Count > 0 Then
|
||||||
|
Dim EstatusDeTipoProcesoMenor As Integer = TecnicosSubProyectoAux.Rows(0).Item("CveEstatusOrdenServicio").ToString.ToEntero
|
||||||
|
Dim dtAuxiliar As New DataTable
|
||||||
|
dtAuxiliar = TecnicosSubProyectos.FiltraParametros(String.Format("SubProyecto = '{0}' AND CveEstatusOrdenServicio = {1}", SubProyecto.Item("SubProyecto"), EstatusDeTipoProcesoMenor), "", {"CveUsuario", "Nombre"})
|
||||||
|
TecnicosResultado.Merge(dtAuxiliar)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
'DtTecnicosSubProyectos = TecnicosResultado
|
||||||
|
|
||||||
|
ObjOS.Dispose()
|
||||||
|
|
||||||
|
DdlTecnicoAsignar.DataSource = TecnicosResultado
|
||||||
|
DdlTecnicoAsignar.DataBind()
|
||||||
|
DdlTecnicoAsignar.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
|
||||||
|
|
||||||
|
UpModalOSAsginar.Update()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
|
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
|
||||||
Dim ObjEventos As New ClsOIEventos
|
Dim ObjEventos As New ClsOIEventos
|
||||||
|
|
||||||
@@ -281,4 +445,325 @@ Partial Class OS_RepServicioDomicilio
|
|||||||
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
||||||
RegistraScript("Calendario();")
|
RegistraScript("Calendario();")
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Private Sub CargaOrdenesServiciosNoAsignadas()
|
||||||
|
|
||||||
|
DdlOrdenesSinAsignar.DataSource = DT_OSNoAsignadas
|
||||||
|
DdlOrdenesSinAsignar.DataBind()
|
||||||
|
UpOrdenesSinAsignar.Update()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Private Sub ConsultaOrdenesServiciosNoAsignadas()
|
||||||
|
|
||||||
|
Dim CveEstatusOrdenServicio As Integer = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus=1").ToEntero
|
||||||
|
|
||||||
|
If CveEstatusOrdenServicio = 0 Then
|
||||||
|
Alert("No se pudo carga el estatus", TipoMensaje.MsgAdvertencia)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim ObjOS As New ClsOS
|
||||||
|
|
||||||
|
If ObjOS.GetOrdenesServiciosNoAsignadas(-1, -1, CveEstatusOrdenServicio, UsuarioActual.CveEmpresa, "-1", "-1") Then
|
||||||
|
DT_OSSubProyectos = ObjOS.DtResultados.FiltraParametros("", "", {"CveSubProyecto", "SubProyecto"})
|
||||||
|
DT_OSNoAsignadas = ObjOS.DtResultados
|
||||||
|
Else
|
||||||
|
|
||||||
|
DT_OSSubProyectos = New DataTable
|
||||||
|
DT_OSNoAsignadas = New DataTable
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ObjOS.Dispose()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
If DT_OSNoAsignadas.Rows.Count > 0 Then
|
||||||
|
DVOSPendientes.Visible = True
|
||||||
|
Else
|
||||||
|
DVOSPendientes.Visible = False
|
||||||
|
End If
|
||||||
|
UpOrdenesSinAsignar.Update()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Protected Sub LnkOrdenesSinAsignarMostarModal_Click(sender As Object, e As EventArgs)
|
||||||
|
|
||||||
|
CveOSDetalleAsignar = -1
|
||||||
|
CveOSAsignar = -1
|
||||||
|
CveSubProyectoAsignar = -1
|
||||||
|
Dim DTable As DataTable = DT_OSNoAsignadas.FiltraParametros($"CveOSDetalle={DdlOrdenesSinAsignar.SelectedValue}")
|
||||||
|
|
||||||
|
|
||||||
|
If DTable.Rows.Count = 1 Then
|
||||||
|
|
||||||
|
CveOSDetalleAsignar = DTable.Rows(0)("CveOSDetalle").ToString.ToEntero
|
||||||
|
CveSubProyectoAsignar = DTable.Rows(0)("CveSubProyecto").ToString.ToEntero
|
||||||
|
CveOSAsignar = DTable.Rows(0)("CveOS").ToString.ToEntero
|
||||||
|
FolioAsignar = DTable.Rows(0)("Folio").ToString
|
||||||
|
|
||||||
|
LblModalConcepto.Text = DTable.Rows(0)("Concepto").ToString
|
||||||
|
LblModalCliente.Text = DTable.Rows(0)("Nombre").ToString
|
||||||
|
LblModalSubProyecto.Text = DTable.Rows(0)("SubProyecto").ToString
|
||||||
|
|
||||||
|
|
||||||
|
UpModalOSAsginar.Update()
|
||||||
|
RegistraScript("$('#DVModalOSAsginar').modal('show');")
|
||||||
|
Else
|
||||||
|
Alert("Error al cargar datos.")
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Protected Sub LnkModalAsignar_Click(sender As Object, e As EventArgs)
|
||||||
|
|
||||||
|
Dim TieneError As Boolean = False
|
||||||
|
Dim CveEstatusOS = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 2", "CveEstatusOrdenServicio ASC").ToEntero
|
||||||
|
|
||||||
|
Dim CorreoAsignado As String = ""
|
||||||
|
|
||||||
|
Dim picker As MKB.TimePicker.TimeSelector = TSTimeSelector
|
||||||
|
Dim time As DateTime
|
||||||
|
time = DateTime.Parse(String.Format("{0} {1}:{2} {3}", TxtModalFechaOS.Text, picker.Hour, picker.Minute, picker.AmPm))
|
||||||
|
|
||||||
|
|
||||||
|
Dim ObjOS As New ClsOS
|
||||||
|
ObjOS.IniciaTransacSQL()
|
||||||
|
|
||||||
|
If ObjOS.GetSubProyectosEstatusInicial(DdlTecnicoAsignar.SelectedValue.ToEntero, 3, UsuarioActual.CveEmpresa) Then
|
||||||
|
Dim subProyectoDelTecnico As DataTable
|
||||||
|
subProyectoDelTecnico = ObjOS.DtResultados.FiltraParametros($"CveSubProyecto = {CveSubProyectoAsignar}")
|
||||||
|
If subProyectoDelTecnico.Rows.Count > 0 Then
|
||||||
|
If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOSDetalleAsignar, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, time, UsuarioActual.CveEmpresa) Then
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Alert("El técnico y la Orden de Servicio deben pertenecer al mismo subProyecto", TipoMensaje.MsgAdvertencia)
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not TieneError Then
|
||||||
|
|
||||||
|
If Not ObjOS.UpdateOrdenesServiciosEstatus(CveEstatusOS, UsuarioActual.CveUsuario, CveOSAsignar) Then
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Not TieneError Then
|
||||||
|
|
||||||
|
Dim RecurrenciaTipo = 0, Frecuencia = -1, DiasSemana = "-1", Dias = -1, Mes = -1, RecurrenciaFin = "-1"
|
||||||
|
Dim OIDescripcion As String = $"{DdlTecnicoAsignar.SelectedItem.Text} <b><a href='/OS/OrdenesServicios.aspx?CveOS={CveOSAsignar}' target='_blank' class='Texto' >Orden de servicio {FolioAsignar} </a></b>"
|
||||||
|
|
||||||
|
Dim ObjEventos As New ClsOIEventos(ObjOS.IniciaTransacSQL())
|
||||||
|
If Not ObjEventos.AddEventoAgenda(2, DdlTecnicoAsignar.SelectedItem.Text, OIDescripcion, 2, time, time.AddHours(1), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
|
||||||
|
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=2,
|
||||||
|
Importe:=0, CveOS:=CveOSAsignar, CveSubProyecto:=CveSubProyectoAsignar) Then
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
CorreoAsignado = GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero).Rows(0)("Correo").ToString
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Not TieneError Then
|
||||||
|
ObjOS.Commit()
|
||||||
|
Else
|
||||||
|
ObjOS.RollBack()
|
||||||
|
End If
|
||||||
|
|
||||||
|
ObjOS.Dispose()
|
||||||
|
|
||||||
|
If Not TieneError And CorreoAsignado.Trim.Length > 0 Then
|
||||||
|
MandaCorreOS(CveOSAsignar, CorreoAsignado)
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not TieneError Then
|
||||||
|
ConsultaOrdenesServiciosNoAsignadas()
|
||||||
|
Alert("Orden asignada correctamente.")
|
||||||
|
RegistraScript("$('#DVModalOSAsginar').modal('hide');Calendario();")
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim ObjOS As New ClsOS()
|
||||||
|
Dim params As New List(Of ReportParameter)
|
||||||
|
Dim CveFolio = ""
|
||||||
|
|
||||||
|
Dim TmpDTOS = New DataTable
|
||||||
|
TmpDTOS.Columns.Add("CveOSDetalle", GetType(Integer))
|
||||||
|
|
||||||
|
TmpDTOS.Columns.Add("CveClasificacion", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("Clasificacion", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("CvePS", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("CveUM", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("UM", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("Cantidad", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("PS", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("Especificaciones", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("Materiales", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("CveCuentaEquipo", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("Observaciones", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("FechaAtencion", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("CveUsuarioAtendio", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("UsuarioAtendio", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("FechaTermino", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("FechaEntrega", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("CveUsuarioEntrego", GetType(Integer))
|
||||||
|
TmpDTOS.Columns.Add("UsuarioEntrego", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("SeFacturara", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("SeSuperviso", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("Estatus", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("Archivo", GetType(String))
|
||||||
|
TmpDTOS.Columns.Add("ComentarioTecnico", GetType(String))
|
||||||
|
|
||||||
|
|
||||||
|
Dim TmpDTMaterialesOS = New DataTable
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveOSDetalle", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveConsecutivo", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveConsecutivoDetalle", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveMaterial", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("Cantidad", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveClasificacion", GetType(Integer))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CvePS", GetType(String))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("CveUM", GetType(String))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("Clasificacion", GetType(String))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("PS", GetType(String))
|
||||||
|
TmpDTMaterialesOS.Columns.Add("UM", GetType(String))
|
||||||
|
|
||||||
|
Dim FolioOS As String = ""
|
||||||
|
|
||||||
|
Dim RutaReporte As New System.IO.FileInfo(String.Format("{0}Formatos/OrdenServicio.rdlc", UsuarioActual.Empresa.Ruta))
|
||||||
|
|
||||||
|
If ObjOS.GetOrdenesServicios(CveOS, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then
|
||||||
|
If ObjOS.DtResultados.Rows.Count > 0 Then
|
||||||
|
|
||||||
|
Dim dtOS As DataTable = ObjOS.DtResultados
|
||||||
|
Dim dr As DataRow = dtOS.Rows(0)
|
||||||
|
params.Add(New ReportParameter("Cliente", dr("Cliente").ToString))
|
||||||
|
params.Add(New ReportParameter("Solicito", dr("PersonaSolicito").ToString))
|
||||||
|
params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
|
||||||
|
params.Add(New ReportParameter("Recibio", UsuarioActual.Nombre))
|
||||||
|
params.Add(New ReportParameter("FechaRecibido", dr("FechaRecepcion").ToString))
|
||||||
|
params.Add(New ReportParameter("FolioOS", dr("Folio").ToString))
|
||||||
|
FolioOS = dr("Folio").ToString
|
||||||
|
params.Add(New ReportParameter("ClienteTelefono", dr("Telefono").ToString))
|
||||||
|
params.Add(New ReportParameter("ClienteCalle", dr("Direccion").ToString))
|
||||||
|
params.Add(New ReportParameter("ClienteColonia", dr("Colonia").ToString))
|
||||||
|
params.Add(New ReportParameter("ClienteCiudad", dr("Ciudad").ToString))
|
||||||
|
params.Add(New ReportParameter("ClienteEstado", dr("Estado").ToString))
|
||||||
|
CveFolio = dr("Folio").ToString
|
||||||
|
|
||||||
|
If RutaReporte.Exists Then
|
||||||
|
params.Add(New ReportParameter("NoDeCliente", dr("CveCliente").ToString))
|
||||||
|
params.Add(New ReportParameter("RFC", dr("RFC").ToString))
|
||||||
|
params.Add(New ReportParameter("Vendedor", " "))
|
||||||
|
params.Add(New ReportParameter("Correo", dr("Correo").ToString))
|
||||||
|
params.Add(New ReportParameter("CodigoDeServicio", dr("CveOS").ToString))
|
||||||
|
params.Add(New ReportParameter("Sucursal", dr("SubProyecto").ToString))
|
||||||
|
params.Add(New ReportParameter("TipoServicio", dr("TipoServicio").ToString))
|
||||||
|
params.Add(New ReportParameter("TipoEquipo", dr("TipoEquipo").ToString))
|
||||||
|
params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
|
||||||
|
params.Add(New ReportParameter("Copia", "Copia: Original"))
|
||||||
|
params.Add(New ReportParameter("Equipo", dr("Equipo").ToString))
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
||||||
|
|
||||||
|
If Not RutaReporte.Exists Then
|
||||||
|
|
||||||
|
RutaReporte = New System.IO.FileInfo(String.Format("{0}Empresas\Grales\Formatos\OrdenServicio.rdlc", ModExtensiones.DirectorioBaseEmpresas))
|
||||||
|
|
||||||
|
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
||||||
|
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||||
|
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
|
||||||
|
|
||||||
|
If Imagen.Exists Then
|
||||||
|
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
|
||||||
|
Else
|
||||||
|
params.Add(New ReportParameter("LogoPath", ""))
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
If ObjOS.GetOrdenesServiciosDetalle(CveOS) Then
|
||||||
|
TmpDTOS = ObjOS.DtResultados
|
||||||
|
End If
|
||||||
|
|
||||||
|
If ObjOS.GetDetalleMateriales(-1, CveOS) Then
|
||||||
|
TmpDTMaterialesOS = ObjOS.DtResultados
|
||||||
|
End If
|
||||||
|
Dim lrds As New List(Of ReportDataSource)
|
||||||
|
Dim rds As New ReportDataSource With {.Name = "DataSet2", .Value = TmpDTMaterialesOS}
|
||||||
|
Dim rds2 As New ReportDataSource With {.Name = "DataSet1", .Value = TmpDTOS}
|
||||||
|
|
||||||
|
lrds.Add(rds)
|
||||||
|
lrds.Add(rds2)
|
||||||
|
ObjOS.Dispose()
|
||||||
|
|
||||||
|
Dim ReporteByte As Byte() = StreamPDF(RutaReporte.FullName, lrds, params, NombreArchivo:=String.Format("OrdenServicio-{0}", CveFolio))
|
||||||
|
|
||||||
|
If ReporteByte IsNot Nothing Then
|
||||||
|
Try
|
||||||
|
ViewState("Para") = CorreoUsuarioAsignado
|
||||||
|
ViewState("ArrayCC") = ""
|
||||||
|
ViewState("Asunto") = "Asinación Orden de Servicio"
|
||||||
|
ViewState("FolioOSMail") = FolioOS
|
||||||
|
ViewState("Body") = "Asinación Orden de Servicio"
|
||||||
|
|
||||||
|
|
||||||
|
ViewState("bytesOS") = ReporteByte
|
||||||
|
Dim Hilo As New Threading.Thread(AddressOf SendmailOS)
|
||||||
|
Hilo.Start()
|
||||||
|
Catch ex As Exception
|
||||||
|
GuardaLogAD($"Error al enviar correo de OS {ex.StackTrace}")
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Sub SendmailOS()
|
||||||
|
|
||||||
|
Dim Asunto, Para, ArrayCC, Body As String
|
||||||
|
Asunto = If(IsNothing(ViewState("Asunto")), "", ViewState("Asunto").ToString)
|
||||||
|
Para = If(IsNothing(ViewState("Para")), "", ViewState("Para").ToString)
|
||||||
|
ArrayCC = If(IsNothing(ViewState("ArrayCC")), "", ViewState("ArrayCC").ToString)
|
||||||
|
|
||||||
|
Body = If(IsNothing(ViewState("Body")), "", ViewState("Body").ToString)
|
||||||
|
|
||||||
|
|
||||||
|
Dim Mail As New ClsSisMail()
|
||||||
|
Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
|
||||||
|
LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.NombreArchivo = $"OS_{ViewState("FolioOSMail") }.pdf", .ArchivoBinario = DirectCast(ViewState("bytesOS"), Byte())})
|
||||||
|
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body, ArrayCC, LSRutasMail)
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
Reference in New Issue
Block a user