Rep finanazas
This commit is contained in:
@@ -525,6 +525,12 @@
|
|||||||
$('[data-toggle="tooltip"]').tooltip();
|
$('[data-toggle="tooltip"]').tooltip();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
|
|||||||
@@ -3,6 +3,19 @@
|
|||||||
<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">
|
||||||
|
<link rel="stylesheet" href="https://www.amcharts.com/lib/3/plugins/export/export.css" type="text/css" media="all" />
|
||||||
|
<style>
|
||||||
|
#chartdiv {
|
||||||
|
width: 100%;
|
||||||
|
height: 500px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fa.fa-bar-chart {
|
||||||
|
width: 16px;
|
||||||
|
height: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
|
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
|
||||||
@@ -52,13 +65,13 @@
|
|||||||
|
|
||||||
<label class="col-md-1" runat="server" id="LiEjercicioLbl">Ejercicio Inicio: </label>
|
<label class="col-md-1" runat="server" id="LiEjercicioLbl">Ejercicio Inicio: </label>
|
||||||
<div class="col-md-2 " runat="server" id="LiEjercicioDdl">
|
<div class="col-md-2 " runat="server" id="LiEjercicioDdl">
|
||||||
<asp:DropDownList ID="DdlEjercicio" runat="server" CssClass="select2me" DataTextField="Ejercicio" DataValueField="Ejercicio" Width="130px" AutoPostBack="true" >
|
<asp:DropDownList ID="DdlEjercicio" runat="server" CssClass="select2me" DataTextField="Ejercicio" DataValueField="Ejercicio" Width="130px" AutoPostBack="true" OnSelectedIndexChanged="DdlEjercicio_SelectedIndexChanged" >
|
||||||
</asp:DropDownList>
|
</asp:DropDownList>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<label class="col-md-1" runat="server" id="LiEjercicioLbl2" visible="True">Ejercicio Fin: </label>
|
<label class="col-md-1" runat="server" id="LiEjercicioLbl2" visible="True">Ejercicio Fin: </label>
|
||||||
<div class="col-md-2" runat="server" id="LiEjercicioDdl2" visible="True">
|
<div class="col-md-2" runat="server" id="LiEjercicioDdl2" visible="True">
|
||||||
<asp:DropDownList ID="DdlEjercicio2" runat="server" CssClass="select2me" DataTextField="Ejercicio" DataValueField="Ejercicio" Width="130px" AutoPostBack="true" >
|
<asp:DropDownList ID="DdlEjercicio2" runat="server" CssClass="select2me" DataTextField="Ejercicio" DataValueField="Ejercicio" Width="130px" AutoPostBack="true" OnSelectedIndexChanged="DdlEjercicio2_SelectedIndexChanged" >
|
||||||
</asp:DropDownList>
|
</asp:DropDownList>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -433,13 +446,23 @@
|
|||||||
EmptyDataText="No se encontraron registros"
|
EmptyDataText="No se encontraron registros"
|
||||||
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" data-sort="true"
|
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" data-sort="true"
|
||||||
Style="text-align: center;" GridLines="None">
|
Style="text-align: center;" GridLines="None">
|
||||||
<Columns>
|
<Columns>
|
||||||
<%-- <asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderStyle-Width="40px">
|
<asp:TemplateField>
|
||||||
<HeaderTemplate>Codigo</HeaderTemplate>
|
<HeaderTemplate>
|
||||||
|
<%--<asp:HyperLink ID="Hypgrafica" runat="server" CssClass="Texto Hypgrafica gral" NavigateUrl="javascript:void(0);" onclick="return cargaGraficaBarras2();"><i class="fa fa-bar-chart" aria-hidden="true"></i></asp:HyperLink>--%>
|
||||||
|
</HeaderTemplate>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Label CssClass="truncate" ID="LblCodigo" runat="server" Text='<%# Eval("Codigo") %>'></asp:Label>
|
<div style="white-space: nowrap">
|
||||||
|
<asp:HyperLink ID="Hypgrafica" Visible="false" runat="server" CssClass="Texto Hypgrafica" NavigateUrl="javascript:void(0);" onclick="return HandlerGraf(this, event);"><i class="fa fa-bar-chart" aria-hidden="true"></i></asp:HyperLink>
|
||||||
|
<asp:CheckBox ID="chkgraf" CssClass="chkgraf" runat="server" Visible="false" />
|
||||||
|
|
||||||
|
<asp:HyperLink ID="hpl2" runat="server" CssClass="Texto Hypgrafica" NavigateUrl="javascript:void(0);" >
|
||||||
|
<i class="fa fa-bar-chart" aria-hidden="true"></i></asp:HyperLink>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>--%>
|
</asp:TemplateField>
|
||||||
|
|
||||||
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ControlStyle-Width="300px">
|
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ControlStyle-Width="300px">
|
||||||
<HeaderTemplate>Ratio</HeaderTemplate>
|
<HeaderTemplate>Ratio</HeaderTemplate>
|
||||||
@@ -584,11 +607,7 @@
|
|||||||
</asp:UpdatePanel>
|
</asp:UpdatePanel>
|
||||||
|
|
||||||
|
|
||||||
|
<div id="DivModalGrafica" class="modal ADS fade" role="dialog">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="DivModalGrafica" class="modal ADS fade" role="dialog">
|
|
||||||
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UPModalProd" UpdateMode="Conditional">
|
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UPModalProd" UpdateMode="Conditional">
|
||||||
<ContentTemplate>
|
<ContentTemplate>
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
@@ -599,7 +618,7 @@
|
|||||||
</h4>
|
</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<div class="row">
|
<div class="row" style="display:none">
|
||||||
<div class="col-md-2"></div>
|
<div class="col-md-2"></div>
|
||||||
<label class="col-md-1 truncate">Grafica:</label>
|
<label class="col-md-1 truncate">Grafica:</label>
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
@@ -610,7 +629,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
<div id="chartdiv"></div>
|
<div id="chartdiv" style="display:none"></div>
|
||||||
|
<div runat="server" id="chartdiv2"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-danger" data-dismiss="modal">Cerrar</button>
|
<button type="button" class="btn btn-danger" data-dismiss="modal">Cerrar</button>
|
||||||
@@ -620,44 +640,12 @@
|
|||||||
</asp:UpdatePanel>
|
</asp:UpdatePanel>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="DivModalGraficaGral" class="modal ADS fade" role="dialog">
|
|
||||||
<asp:UpdatePanel class="modal-dialog modal-lg" style="width: 1300px" runat="server" ID="UpdatePanel1" UpdateMode="Conditional">
|
|
||||||
<ContentTemplate>
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
|
||||||
<h4 class="modal-title">
|
|
||||||
<asp:Label CssClass="LblTituloGraficaGral" runat="server" ClientIDMode="Static" Text="">Análisis de estados de resultados</asp:Label>
|
|
||||||
</h4>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-1"></div>
|
|
||||||
<label class="col-md-2 truncate" style="display: inline-block; padding-top: 8px; font-weight: bold;">Seleccione el tipo de gráfica:</label>
|
|
||||||
<div class="col-md-4">
|
|
||||||
<asp:RadioButtonList ID="rdblistgrafica" CssClass="rdblistgrafica" runat="server" RepeatDirection="Horizontal">
|
|
||||||
<asp:ListItem Selected="True" Text="Barras" Value="1"></asp:ListItem>
|
|
||||||
<asp:ListItem Text="Lineas" Value="2"></asp:ListItem>
|
|
||||||
</asp:RadioButtonList>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div id="grafInfo"></div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-9">
|
|
||||||
<div id="chartdivgral"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<br />
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<button type="button" class="btn btn-danger" 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">
|
||||||
@@ -680,7 +668,7 @@
|
|||||||
} else {
|
} else {
|
||||||
CargaGraficaPastel();
|
CargaGraficaPastel();
|
||||||
}
|
}
|
||||||
$('.LblTituloGrafica').text($(obj).parent().text());
|
$('.LblTituloGrafica').text($(obj).closest('tr').text().trim());
|
||||||
}
|
}
|
||||||
function CargaGraficaBarras() {
|
function CargaGraficaBarras() {
|
||||||
let data = cdatos;
|
let data = cdatos;
|
||||||
@@ -698,7 +686,7 @@
|
|||||||
"colorField": "Color",
|
"colorField": "Color",
|
||||||
"fillAlphas": 1,
|
"fillAlphas": 1,
|
||||||
"lineAlpha": 0.1,
|
"lineAlpha": 0.1,
|
||||||
"type": "column",
|
"type": "line",
|
||||||
"valueField": "Valor"
|
"valueField": "Valor"
|
||||||
}],
|
}],
|
||||||
"depth3D": 20,
|
"depth3D": 20,
|
||||||
@@ -718,7 +706,6 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function CargaGraficaPastel() {
|
function CargaGraficaPastel() {
|
||||||
let data = cdatos;
|
let data = cdatos;
|
||||||
var chart = AmCharts.makeChart("chartdiv", {
|
var chart = AmCharts.makeChart("chartdiv", {
|
||||||
@@ -747,137 +734,50 @@
|
|||||||
CargaGraficaPastel();
|
CargaGraficaPastel();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$(".rdblistgrafica:not(.clicked) input").change(cargaGraficaBarras2);
|
|
||||||
|
|
||||||
$('.rdblistgrafica').addClass('clicked')
|
|
||||||
$('.DdlGrafica').removeClass('DdlGrafica')
|
$('.DdlGrafica').removeClass('DdlGrafica')
|
||||||
|
|
||||||
|
|
||||||
initamgrafica();
|
initamgrafica();
|
||||||
}
|
}
|
||||||
let objetos;
|
|
||||||
let Colores = ["#FF0F00", "#FF6600", "#F8FF01", "#04D215", "#2A0CD0", "#8A0CCF", "#CD0D74", "#754DEB", "#DDDDDD", "#999999", "#000000"];
|
|
||||||
|
|
||||||
function graficarshow() {
|
|
||||||
$('.btngraficarborrar').remove();
|
|
||||||
$('#C_Tab_header').append('<a onclick="cargaGraficaBarras2();" class="btn btn-success btngraficarborrar" style="float:right;"><i class="fa fa-bar-chart" aria-hidden="true"></i> Graficar</a>');
|
|
||||||
$('#C_Tab_body').addClass('showgrph');
|
|
||||||
}
|
|
||||||
function cargaGraficaBarras2(Titulo) {
|
|
||||||
$('.LblTituloGraficaGral').text(Titulo);
|
|
||||||
cargaGraficaBarras2();
|
|
||||||
}
|
|
||||||
function cargaGraficaBarras2() {
|
function cargaGraficaBarras2() {
|
||||||
|
|
||||||
//Hypgrafica
|
//Hypgrafica
|
||||||
$("#DivModalGraficaGral").modal();
|
$("#DivModalGrafica").modal();
|
||||||
let infogral = $('#grafInfo');
|
$('.LblTituloGrafica').text('grafica');
|
||||||
infogral.find('>*').remove();
|
|
||||||
let items = []
|
let items = []
|
||||||
let data;
|
let data;
|
||||||
let icolor = 0;
|
|
||||||
let tipografica = $('.rdblistgrafica input:checked').val();
|
|
||||||
|
|
||||||
$('.ajax__tab_panel:visible .chkgraf input:checked').each(function () {
|
|
||||||
data = $(this).closest('tr').find('.Hypgrafica').data('values')
|
|
||||||
let name = $(this).closest('td').text().trim()
|
|
||||||
items.push({ id: icolor, data: data, name: name, Color: Colores[icolor], tipografica })
|
|
||||||
gettitlegraf(infogral, icolor, Colores[icolor], name, tipografica);
|
|
||||||
icolor = icolor + 1;
|
|
||||||
if (icolor >= Colores.length) { icolor = 0; }
|
|
||||||
});
|
|
||||||
objetos = items;
|
|
||||||
|
|
||||||
$(".chkonchange input").each(function () {
|
|
||||||
let _this = $(this)
|
|
||||||
_this.change(function () {
|
|
||||||
let _this = $(this)
|
|
||||||
let id = Number(_this.data('id'))
|
|
||||||
objetos[id].tipografica = _this.is(':checked') ? 1 : 2;
|
|
||||||
ShowGraf2();
|
|
||||||
})
|
|
||||||
});
|
|
||||||
$(function () {
|
|
||||||
$('.chkonchange').tooltip()
|
|
||||||
});
|
|
||||||
ShowGraf2();
|
|
||||||
}
|
|
||||||
function gettitlegraf(infogral, id, Color, name, tipografica) {
|
|
||||||
let strtipografica = '<span class="chksino chkonchange" data-html="true" data-original-title="<div style=\'white-space:nowrap;\'>\'B\' Barras / \'L\' Lineas </div>" ><input id="chk' + id + '" ' + (tipografica == 1 ? 'checked="checked"' : '"') + ' data-id="' + id + '" type="checkbox" name="nchk' + id + '"><label for="chk' + id + '"> </label></span>';
|
|
||||||
|
|
||||||
let contenedor = $("<div class='row'></div>");
|
|
||||||
let divcolspan = $("<div class='col-md-1'></div>");
|
|
||||||
let divcolor = $('<div class="col-md-1"><div style="width:20px;height:10px;background-color:' + Color + ';"></div> </div>');
|
|
||||||
let divtexto = $("<div class='col-md-6'>" + name + "</div>");
|
|
||||||
let divtipografica = $("<div class='col-md-4'>" + strtipografica + "</div>");
|
|
||||||
infogral.append(contenedor);
|
|
||||||
/*contenedor.append(divcolspan);*/ contenedor.append(divcolor); contenedor.append(divtexto); contenedor.append(divtipografica);
|
|
||||||
}
|
|
||||||
function ShowGraf2() {
|
|
||||||
let items = objetos;
|
|
||||||
let series = [];
|
let series = [];
|
||||||
|
$('.chkgraf input:checked').each(function () {
|
||||||
|
data = $(this).closest('tr').find('.Hypgrafica').data('values')
|
||||||
|
let name = $(this).closest('tr').text().trim()
|
||||||
|
items.push({ data: data, name: name })
|
||||||
|
});
|
||||||
if (items) {
|
if (items) {
|
||||||
data = items[0].data;
|
data = items[0].data;
|
||||||
series.push((
|
series.push({
|
||||||
(items[0].tipografica == 1) ?
|
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
||||||
{
|
"colorField": "Color",
|
||||||
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
"fillAlphas": 1,
|
||||||
"colorField": "Color",
|
"lineAlpha": 0.1,
|
||||||
"fillAlphas": 1,
|
"type": "column",
|
||||||
"lineAlpha": 0.1,
|
"title": items[0].name,
|
||||||
"type": "column",
|
"valueField": 'Valor'
|
||||||
"title": items[0].name,
|
})
|
||||||
"valueField": 'Valor'
|
|
||||||
} :
|
|
||||||
{
|
|
||||||
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
|
||||||
"colorField": "Color",
|
|
||||||
"bullet": "round",
|
|
||||||
"dashLength": 3,
|
|
||||||
"colorField": "color",
|
|
||||||
"type": "line",
|
|
||||||
"title": items[0].name,
|
|
||||||
"valueField": "Valor"
|
|
||||||
}
|
|
||||||
));
|
|
||||||
|
|
||||||
for (var i = 0; i < data.length; i++) {
|
|
||||||
data[i]['Color'] = items[0].Color
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var indexcol = 1; indexcol < items.length; indexcol++) {
|
for (var indexcol = 1; indexcol < items.length; indexcol++) {
|
||||||
let cdatos = items[indexcol].data;
|
let cdatos = items[indexcol].data;
|
||||||
let valueField = 'Valor' + indexcol;
|
let valueField = 'Valor' + indexcol;
|
||||||
let colorField = 'Color' + indexcol;
|
|
||||||
let tipografica = "column";
|
|
||||||
for (var i = 0; i < cdatos.length; i++) {
|
for (var i = 0; i < cdatos.length; i++) {
|
||||||
data[i][valueField] = cdatos[i].Valor
|
data[i][valueField] = cdatos[i].Valor
|
||||||
data[i][colorField] = items[indexcol].Color
|
|
||||||
}
|
}
|
||||||
series.push((
|
series.push({
|
||||||
(items[indexcol].tipografica == 1) ?
|
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
||||||
{
|
"colorField": "Color",
|
||||||
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
"fillAlphas": 1,
|
||||||
"colorField": colorField,
|
"lineAlpha": 0.1,
|
||||||
"fillAlphas": 1,
|
"type": "column",
|
||||||
"lineAlpha": 0.1,
|
"title": items[indexcol].name,
|
||||||
"type": "column",
|
"valueField": valueField
|
||||||
"title": items[indexcol].name,
|
})
|
||||||
"valueField": valueField
|
|
||||||
} :
|
|
||||||
{
|
|
||||||
"balloonText": "[[title]]: <b>[[value]]</b> [[Moneda]]",
|
|
||||||
"colorField": colorField,
|
|
||||||
"bullet": "round",
|
|
||||||
"dashLength": 3,
|
|
||||||
"colorField": "color",
|
|
||||||
"type": "line",
|
|
||||||
"title": items[indexcol].name,
|
|
||||||
"valueField": valueField
|
|
||||||
}
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
var chart = AmCharts.makeChart("chartdivgral", {
|
var chart = AmCharts.makeChart("chartdiv", {
|
||||||
"type": "serial",
|
"type": "serial",
|
||||||
"theme": "light",
|
"theme": "light",
|
||||||
"dataProvider": data,
|
"dataProvider": data,
|
||||||
@@ -960,4 +860,171 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
<script>
|
||||||
|
function LimpiaCeros() {
|
||||||
|
|
||||||
|
let Divisor = 1;
|
||||||
|
|
||||||
|
$('.ceros').each(function (i, obj) {
|
||||||
|
|
||||||
|
if ($(this).html() == '0.00' || $(this).html() == '0.00%') {
|
||||||
|
$(this).html('-');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!($(this).html() == '-' || $(this).html() == '' || ~$(this).html().indexOf("%"))) {
|
||||||
|
if (Divisor > 1) {
|
||||||
|
$(this).attr('data-toggle', 'tooltip');
|
||||||
|
$(this).attr('data-container', 'body');
|
||||||
|
$(this).attr('title', $(this).html());
|
||||||
|
}
|
||||||
|
$(this).html(FormatoNumeroIPP(ToDouble($(this).html()) / Divisor, ((Divisor == 1) ? 2 : 0)));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ToDouble($(this).html()) < 0) {
|
||||||
|
$(this).css("color", "red");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function FormatoNumeroIPP(Importe, Decimales) {
|
||||||
|
if (typeof Decimales === 'undefined') { Decimales = 2; }
|
||||||
|
|
||||||
|
if (isNaN(parseInt(Importe))) return "NaN";
|
||||||
|
|
||||||
|
var tmpNum = Importe;
|
||||||
|
|
||||||
|
tmpNum = tmpNum.toFixed(Decimales).replace(/./g, function (c, i, a) {
|
||||||
|
return i && c !== "." && !((a.length - i) % 3) ? ',' + c : c;
|
||||||
|
});
|
||||||
|
|
||||||
|
return tmpNum;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function pageLoad(sender, e) {
|
||||||
|
$(document).ready(function () {
|
||||||
|
$('[data-toggle="tooltip"]').tooltip();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function graficahighchartsFinan(idcontainer, titulo, subtitulo, ytitulo, datos, Yinterval, labelpoint, media, datospie1, datospie2, Tittulo2) {
|
||||||
|
|
||||||
|
|
||||||
|
$('#LblTituloGrafica').text(Tittulo2)
|
||||||
|
|
||||||
|
$(document).ready(function () {
|
||||||
|
$(".chartcheckboxes").remove();
|
||||||
|
});
|
||||||
|
var Monedas = '';
|
||||||
|
if (datospie1.length > 0) {
|
||||||
|
Monedas = 'Monedas';
|
||||||
|
}
|
||||||
|
var numerodatos = 0;
|
||||||
|
$("<div class='chartcheckboxes' ><span></span></div>").insertAfter("#" + idcontainer);
|
||||||
|
if (datos.length > 0) {
|
||||||
|
var numerodatos = datos.length - 1;
|
||||||
|
//var media = (datos.reduce(function (a, b) { return a + b; })) / (numerodatos + 1);
|
||||||
|
for (var i = numerodatos; i >= 0; i--) {
|
||||||
|
$("<input type='checkbox' id='" + idcontainer + i + "' class='overrydecheckbox' value='" + i + "' onchange=\" changedatagrafica2('" + idcontainer + "');\" /><label for='" + idcontainer + i + "'>" + datos[i][0].substring(0, 3) + "</label>").insertAfter("#" + idcontainer + " + div span");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$("#" + idcontainer).data('serie', datos);
|
||||||
|
|
||||||
|
var margintop = 80;
|
||||||
|
var dataset = [{
|
||||||
|
type: 'area',
|
||||||
|
lineColor: '#9ACAE6',
|
||||||
|
color: '#F1F7FD',
|
||||||
|
fillColor: '#F1F7FD',
|
||||||
|
lineWidth: 3,
|
||||||
|
marker: {
|
||||||
|
lineWidth: 2,
|
||||||
|
lineColor: '#9ACAE6',
|
||||||
|
fillColor: '#9ACAE6'
|
||||||
|
},
|
||||||
|
pointInterval: 1,
|
||||||
|
name: ' ',
|
||||||
|
data: datos
|
||||||
|
}, {
|
||||||
|
type: 'line',
|
||||||
|
lineWidth: 2,
|
||||||
|
lineColor: '#999',
|
||||||
|
marker: {
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
name: ' ',
|
||||||
|
data: [media, media]
|
||||||
|
}];
|
||||||
|
|
||||||
|
$('#' + idcontainer).highcharts({
|
||||||
|
chart: {
|
||||||
|
type: 'area', spacingTop: margintop
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
text: titulo
|
||||||
|
},
|
||||||
|
subtitle: {
|
||||||
|
text: subtitulo
|
||||||
|
},
|
||||||
|
xAxis: {
|
||||||
|
type: "category"
|
||||||
|
|
||||||
|
},
|
||||||
|
yAxis: {
|
||||||
|
title: {
|
||||||
|
text: ytitulo
|
||||||
|
},
|
||||||
|
labels: {
|
||||||
|
formatter: function () {
|
||||||
|
return this.value / Yinterval;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
tooltip: {
|
||||||
|
shared: true,
|
||||||
|
valueSuffix: labelpoint
|
||||||
|
},
|
||||||
|
plotOptions: {
|
||||||
|
area: {
|
||||||
|
color: '#FBC5C5',
|
||||||
|
fillColor: '#FBC5C5',
|
||||||
|
stacking: 'normal',
|
||||||
|
lineColor: '#F89F9F',
|
||||||
|
lineWidth: 0,
|
||||||
|
marker: {
|
||||||
|
radius: 5,
|
||||||
|
lineWidth: 2,
|
||||||
|
lineColor: '#FFF',
|
||||||
|
fillColor: '#F89F9F'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
line: {
|
||||||
|
pointInterval: numerodatos,
|
||||||
|
lineColor: '#999999',
|
||||||
|
marker: {
|
||||||
|
enabled: false,
|
||||||
|
symbol: 'circle',
|
||||||
|
radius: 2,
|
||||||
|
states: {
|
||||||
|
hover: {
|
||||||
|
enabled: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
series: dataset,
|
||||||
|
navigation: {
|
||||||
|
buttonOptions: {
|
||||||
|
y: -80
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
|
|||||||
@@ -58,40 +58,55 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
CargarCentrosDeCosto(Nothing, DdlSubproyecto, Nothing, LblSubProyecto)
|
CargarCentrosDeCosto(Nothing, DdlSubproyecto, Nothing, LblSubProyecto)
|
||||||
|
|
||||||
DdlEjercicio.SelectedValueExist(UsuarioActual.Empresa.EjercicioActual)
|
DdlEjercicio.SelectedValueExist(UsuarioActual.Empresa.EjercicioActual)
|
||||||
ValidaEjercicios()
|
ValidaEjercicios(EnumInicioFin.Fin)
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Protected Sub DdlEjercicio_SelectedIndexChanged(sender As Object, e As EventArgs)
|
Protected Sub DdlEjercicio_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||||
ValidaEjercicios()
|
ValidaEjercicios(EnumInicioFin.Inicio)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Protected Sub DdlEjercicio2_SelectedIndexChanged(sender As Object, e As EventArgs)
|
Protected Sub DdlEjercicio2_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||||
ValidaEjercicios()
|
ValidaEjercicios(EnumInicioFin.Fin)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub ValidaEjercicios()
|
Enum EnumInicioFin
|
||||||
|
Inicio
|
||||||
|
Fin
|
||||||
|
End Enum
|
||||||
|
|
||||||
|
Private Sub ValidaEjercicios(enuInicioFin As EnumInicioFin)
|
||||||
|
|
||||||
Dim EInicio As Integer = DdlEjercicio.SelectedValue.ToEntero
|
If enuInicioFin = EnumInicioFin.Inicio Then
|
||||||
|
If DdlEjercicio.SelectedIndex > DdlEjercicio2.SelectedIndex Then
|
||||||
|
DdlEjercicio2.SelectedIndex = DdlEjercicio.SelectedIndex
|
||||||
If EInicio > DdlEjercicio2.SelectedValue.ToEntero Then
|
|
||||||
|
|
||||||
If DdlEjercicio2.Items.Count > 0 Then
|
|
||||||
DdlEjercicio2.SelectedIndex = DdlEjercicio2.Items.Count - 1
|
|
||||||
End If
|
End If
|
||||||
|
Else
|
||||||
Dim Fejerciosio As Integer = DdlEjercicio2.SelectedValue.ToEntero
|
If DdlEjercicio.SelectedIndex > DdlEjercicio2.SelectedIndex Then
|
||||||
|
DdlEjercicio.SelectedIndex = DdlEjercicio2.SelectedIndex
|
||||||
If Not EInicio + 1 > Fejerciosio Then
|
|
||||||
DdlEjercicio2.SelectedValueExist(EInicio + 1)
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'Dim EInicio As Integer = DdlEjercicio.SelectedValue.ToEntero
|
||||||
|
|
||||||
|
|
||||||
|
'If EInicio > DdlEjercicio2.SelectedValue.ToEntero Then
|
||||||
|
|
||||||
|
' If DdlEjercicio2.Items.Count > 0 Then
|
||||||
|
' DdlEjercicio2.SelectedIndex = DdlEjercicio2.Items.Count - 1
|
||||||
|
' End If
|
||||||
|
|
||||||
|
' Dim Fejerciosio As Integer = DdlEjercicio2.SelectedValue.ToEntero
|
||||||
|
|
||||||
|
' If Not EInicio + 1 > Fejerciosio Then
|
||||||
|
' DdlEjercicio2.SelectedValueExist(EInicio + 1)
|
||||||
|
' End If
|
||||||
|
|
||||||
|
'End If
|
||||||
|
|
||||||
|
|
||||||
UpFiltros.Update()
|
UpFiltros.Update()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -358,7 +373,7 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
|
|
||||||
Private Sub GVRatiosOcultarColumnas(ByRef Gv As GridView, Optional index As Integer = 2)
|
Private Sub GVRatiosOcultarColumnas(ByRef Gv As GridView, Optional index As Integer = 2)
|
||||||
|
|
||||||
For index = 1 To Gv.Columns.Count - 1
|
For index = 2 To Gv.Columns.Count - 1
|
||||||
CType(Gv.Columns(index), BoundField).DataField = Nothing
|
CType(Gv.Columns(index), BoundField).DataField = Nothing
|
||||||
Gv.Columns(index).Visible = False
|
Gv.Columns(index).Visible = False
|
||||||
Next
|
Next
|
||||||
@@ -366,7 +381,7 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub GVRatiosMostrarColumnas(dt As DataTable, ByRef Gv As GridView)
|
Private Sub GVRatiosMostrarColumnas(dt As DataTable, ByRef Gv As GridView)
|
||||||
Dim index = 4
|
|
||||||
|
|
||||||
|
|
||||||
For index = 4 To dt.Columns.Count - 2
|
For index = 4 To dt.Columns.Count - 2
|
||||||
@@ -383,6 +398,10 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
|
|
||||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
For x = 1 To DTRatios.Columns.Count
|
For x = 1 To DTRatios.Columns.Count
|
||||||
|
|
||||||
If e.Row.DataKey("Ratio") = "INCREMENTO DE VENTAS" Then
|
If e.Row.DataKey("Ratio") = "INCREMENTO DE VENTAS" Then
|
||||||
@@ -411,7 +430,7 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
|
|
||||||
Dim EsPorcentaje = If(e.Row.DataKey("EsPorcentaje").ToEntero = 1, True, False)
|
Dim EsPorcentaje = If(e.Row.DataKey("EsPorcentaje").ToEntero = 1, True, False)
|
||||||
|
|
||||||
For x = 1 To DTRatios.Columns.Count - 2
|
For x = 2 To DTRatios.Columns.Count - 2
|
||||||
If EsPorcentaje Then
|
If EsPorcentaje Then
|
||||||
e.Row.Cells(x).Text = $"{(e.Row.Cells(x).Text.ToDecimal * 100.0).ToString("###,####,###.00")}%"
|
e.Row.Cells(x).Text = $"{(e.Row.Cells(x).Text.ToDecimal * 100.0).ToString("###,####,###.00")}%"
|
||||||
Else
|
Else
|
||||||
@@ -420,6 +439,7 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
Next
|
Next
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If e.Row.DataKey("Formula").Trim().Length > 0 Then
|
If e.Row.DataKey("Formula").Trim().Length > 0 Then
|
||||||
|
|
||||||
'data-html="true" data-toggle="tooltip" data-placement="left" title="Agregar<br/>Familiares"
|
'data-html="true" data-toggle="tooltip" data-placement="left" title="Agregar<br/>Familiares"
|
||||||
@@ -430,16 +450,87 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim Titulo As String = e.Row.FCLabel("LblRatio").Text
|
||||||
|
Dim SubTitulo As String = ""
|
||||||
|
Dim YReferencia As String = "$"
|
||||||
|
Dim Info As String = ""
|
||||||
|
Dim XReferencia As String = ""
|
||||||
|
Dim Promedio As String = ""
|
||||||
|
|
||||||
|
Dim lista As New List(Of Object)
|
||||||
|
Dim Lista2 As New List(Of String)
|
||||||
|
For x = 2 To GVRatios.Columns.Count - 1
|
||||||
|
|
||||||
|
If GVRatios.Columns(x).Visible = True Then
|
||||||
|
|
||||||
|
Dim headerString As String = GVRatios.Columns(x).HeaderText
|
||||||
|
|
||||||
|
If IsDate(headerString) Then
|
||||||
|
Dim valor As String = e.Row.Cells(x).Text.ToString.Replace("%", "").Replace(" ", "").Replace(" ", "").Replace(",", "").Trim
|
||||||
|
|
||||||
|
If valor.Length > 0 Then
|
||||||
|
lista.Add(New With {.Texto = headerString, .Valor = valor.ToDecimal, .Color = "#FF0F00"})
|
||||||
|
Lista2.Add($"['{headerString}',{valor}]")
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
'e.Row.FCHyperLink("Hypgrafica").Attributes.Add("data-values", Newtonsoft.Json.JsonConvert.SerializeObject(lista))
|
||||||
|
|
||||||
|
If e.Row.DataKey("Tipo").ToEntero <> 1 Then
|
||||||
|
Info = String.Join(",", Lista2)
|
||||||
|
e.Row.FCHyperLink("hpl2").Attributes.Add("onclick", "$('#DivModalGrafica').modal('show'); " &
|
||||||
|
String.Format("graficahighchartsFinan('{0}','{1}','{2}','{3}',[{4}],1,'{5}','{6}',[{8}],[{7}],'{9}');", chartdiv2.ClientID, "", SubTitulo, YReferencia, Info, XReferencia, Promedio, "", "", Titulo))
|
||||||
|
Else
|
||||||
|
e.Row.FCHyperLink("hpl2").Visible = False
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'AppendFormat("graficahighcharts2('{0}','{1}','{2}','{3}',[{4}],1,'{5}','{6}',[{8}],[{7}]);", divcontainer.ClientID, Titulo, SubTitulo, YReferencia, Info, XReferencia, Promedio, "", "")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Private Function MuestraGrafica(divcontainer As HtmlGenericControl, DTDatos As DataTable, DTPie As DataTable, ColTitle As String, ColValue As String, Titulo As String, SubTitulo As String, Indicador As String, XReferencia As String, Promedio As String, Optional YReferencia As String = "") As String
|
||||||
|
Dim SBPie1 As New StringBuilder
|
||||||
|
Dim SBPie2 As New StringBuilder
|
||||||
|
Dim Info As String = ""
|
||||||
|
Dim SBJSScript As New StringBuilder
|
||||||
|
|
||||||
|
'If DTDatos IsNot Nothing AndAlso DTDatos.Rows.Count > 0 Then
|
||||||
|
' For Each DbRow As DataRow In DTDatos.Rows
|
||||||
|
' Info = String.Format("{2}['{1}',{0}],", DbRow(ColValue), DbRow(ColTitle), Info)
|
||||||
|
' Next
|
||||||
|
' Info = Info.Remove(Info.Length - 1, 1)
|
||||||
|
'End If
|
||||||
|
|
||||||
|
'For Each DbRow As DataRow In DTPie.Rows
|
||||||
|
' If DbRow("Importe").ToString.ToDouble > 0 Then SBPie1.AppendFormat("{{ name:'{1}- {2}',y:{0} }},", DbRow("Importe"), DbRow("Banco"), DbRow("NumCuenta"))
|
||||||
|
'Next
|
||||||
|
|
||||||
|
'pesos y dolares
|
||||||
|
'Dim Dolares As Double = DTPie.SUM("Importe", "CveMoneda = 2")
|
||||||
|
|
||||||
|
'If Dolares > 0 Then
|
||||||
|
' SBPie2.AppendFormat("{{ name:'Dólares',y:{0} }},", Dolares)
|
||||||
|
' SBPie2.AppendFormat("{{ name:'Pesos',y:{0} }},", DTPie.SUM("Importe", "CveMoneda = 1"))
|
||||||
|
'End If
|
||||||
|
|
||||||
|
|
||||||
|
SBJSScript.AppendFormat("graficahighcharts2('{0}','{1}','{2}','{3}',[{4}],1,'{5}','{6}',[{8}],[{7}]);", divcontainer.ClientID, Titulo, SubTitulo, YReferencia, Info, XReferencia, Promedio, "", "")
|
||||||
|
|
||||||
|
Return SBJSScript.ToString
|
||||||
|
|
||||||
|
'RegistraScript(SBJSScript.ToString, Indicador)
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
|
|
||||||
@@ -513,15 +604,15 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
LblPeriodo.Visible = True
|
LblPeriodo.Visible = True
|
||||||
DivPeriodo.Visible = True
|
DivPeriodo.Visible = True
|
||||||
|
|
||||||
AddHandler DdlEjercicio.SelectedIndexChanged, AddressOf DdlEjercicio_SelectedIndexChanged
|
'AddHandler DdlEjercicio.SelectedIndexChanged, AddressOf DdlEjercicio_SelectedIndexChanged
|
||||||
AddHandler DdlEjercicio2.SelectedIndexChanged, AddressOf DdlEjercicio2_SelectedIndexChanged
|
'AddHandler DdlEjercicio2.SelectedIndexChanged, AddressOf DdlEjercicio2_SelectedIndexChanged
|
||||||
CargaEjercicios()
|
CargaEjercicios()
|
||||||
Else
|
Else
|
||||||
DVVisualizacion.Visible = True
|
DVVisualizacion.Visible = True
|
||||||
LblVisualizacion.Visible = True
|
LblVisualizacion.Visible = True
|
||||||
|
|
||||||
RemoveHandler CType(DdlEjercicio, DropDownList).SelectedIndexChanged, AddressOf DdlEjercicio_SelectedIndexChanged
|
'RemoveHandler CType(DdlEjercicio, DropDownList).SelectedIndexChanged, AddressOf DdlEjercicio_SelectedIndexChanged
|
||||||
RemoveHandler CType(DdlEjercicio2, DropDownList).SelectedIndexChanged, AddressOf DdlEjercicio2_SelectedIndexChanged
|
'RemoveHandler CType(DdlEjercicio2, DropDownList).SelectedIndexChanged, AddressOf DdlEjercicio2_SelectedIndexChanged
|
||||||
CargaMeses()
|
CargaMeses()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -633,7 +724,10 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
ListaFechas.Add(FechaTemp.ToString("yyyy-MM-dd"))
|
ListaFechas.Add(FechaTemp.ToString("yyyy-MM-dd"))
|
||||||
While FechaFinal >= FechaTemp
|
While FechaFinal >= FechaTemp
|
||||||
FechaTemp = FechaTemp.AddMonths(1).LastDayOfMonth
|
FechaTemp = FechaTemp.AddMonths(1).LastDayOfMonth
|
||||||
ListaFechas.Add(FechaTemp.ToString("yyyy-MM-dd"))
|
If FechaFinal >= FechaTemp Then
|
||||||
|
ListaFechas.Add(FechaTemp.ToString("yyyy-MM-dd"))
|
||||||
|
End If
|
||||||
|
|
||||||
End While
|
End While
|
||||||
|
|
||||||
|
|
||||||
@@ -647,6 +741,9 @@ Partial Class Finanzas_RepRazonesFinancieras2
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -212,6 +212,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- END REGIONAL STATS PORTLET-->
|
<!-- END REGIONAL STATS PORTLET-->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="DvGraBancos" runat="server" class="col-md-6 col-sm-6">
|
<div id="DvGraBancos" runat="server" class="col-md-6 col-sm-6">
|
||||||
<!-- BEGIN REGIONAL STATS PORTLET-->
|
<!-- BEGIN REGIONAL STATS PORTLET-->
|
||||||
<div class="portlet light ">
|
<div class="portlet light ">
|
||||||
|
|||||||
Reference in New Issue
Block a user