Grupo Tecnico y Grupo Tematico Descripcion Larga DAL - Vista - JS
git-tfs-id: [http://192.168.1.10:8080/tfs/AyA]$/SINORT;C147
This commit is contained in:
parent
73ba4af231
commit
55ef4e357e
5 changed files with 184 additions and 13 deletions
|
|
@ -32,6 +32,17 @@ this.getDataModel = function () {
|
||||||
InsertarItem();
|
InsertarItem();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#btnDescripcionLarga").unbind("click");
|
||||||
|
$("#btnDescripcionLarga").click(function () {
|
||||||
|
$("#divRespuesta").empty();
|
||||||
|
$("#lblDescripcionLarga").text("Descripción");
|
||||||
|
$("#txtDescripcionLarga").val('');
|
||||||
|
|
||||||
|
|
||||||
|
$('#modalDescripcionLarga-footer').css("display", "block");
|
||||||
|
$('#modalDescripcionLarga').modal('show');
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
$('#TableItems').TableInit(0, false, true, true, false, null, null);
|
$('#TableItems').TableInit(0, false, true, true, false, null, null);
|
||||||
ObtenerContenido();
|
ObtenerContenido();
|
||||||
|
|
@ -45,6 +56,11 @@ this.CargarGridContenido = function (data) {
|
||||||
|
|
||||||
$.each(lista, function (key, item) {
|
$.each(lista, function (key, item) {
|
||||||
|
|
||||||
|
var btnDescripcionLarga = $("#ucbtDescripcionLarga").html();
|
||||||
|
btnDescripcionLarga = replaceAll("[$DescripcionLarga]", item.DescripcionLarga, btnDescripcionLarga);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var option = $("#ucItemsCatalogo").html();
|
var option = $("#ucItemsCatalogo").html();
|
||||||
|
|
||||||
option = replaceAll("[$CodItem]", item.IdContenido, option);
|
option = replaceAll("[$CodItem]", item.IdContenido, option);
|
||||||
|
|
@ -67,10 +83,15 @@ this.CargarGridContenido = function (data) {
|
||||||
option = replaceAll("[$icon]", "fa-times", option);
|
option = replaceAll("[$icon]", "fa-times", option);
|
||||||
option = replaceAll("[$value]", "0", option);
|
option = replaceAll("[$value]", "0", option);
|
||||||
}
|
}
|
||||||
|
|
||||||
TableItems.column(1).visible(false);
|
TableItems.column(1).visible(false);
|
||||||
|
TableItems.column(3).visible(false);
|
||||||
|
|
||||||
TableItems.row.add([stateIcon,
|
TableItems.row.add([stateIcon,
|
||||||
item.IdContenido,
|
item.IdContenido,
|
||||||
item.Descripcion,
|
item.Descripcion,
|
||||||
|
item.DescripcionLarga,
|
||||||
|
btnDescripcionLarga,
|
||||||
option]).draw();
|
option]).draw();
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
@ -78,6 +99,14 @@ this.CargarGridContenido = function (data) {
|
||||||
ENDREQUEST();
|
ENDREQUEST();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.VerDescripcionLarga = function (DescripcionLarga) {
|
||||||
|
|
||||||
|
$("#txtDescripcionLarga").val(DescripcionLarga);
|
||||||
|
$('#modalDescripcionLarga').modal('show');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
this.ObtenerContenido = function () {
|
this.ObtenerContenido = function () {
|
||||||
|
|
||||||
var uri = CatalogosWCF + '/api/ObtenerContenido';
|
var uri = CatalogosWCF + '/api/ObtenerContenido';
|
||||||
|
|
@ -95,8 +124,10 @@ this.EditarItem = function (id) {
|
||||||
|
|
||||||
$('#hiddenId').val(id)
|
$('#hiddenId').val(id)
|
||||||
$('#txtDescripcion').val(TableItems.cell(indexes, 2).data());
|
$('#txtDescripcion').val(TableItems.cell(indexes, 2).data());
|
||||||
|
$('#txtAreaDescripcionLarga').val(TableItems.cell(indexes, 3).data());
|
||||||
|
|
||||||
$("#formCatalogo").validateElement("#txtDescripcion");
|
$("#formCatalogo").validateElement("#txtDescripcion");
|
||||||
|
$("#formCatalogo").validateElement("#txtAreaDescripcionLarga");
|
||||||
|
|
||||||
$('#lbTituloAccion').empty();
|
$('#lbTituloAccion').empty();
|
||||||
$('#lbTituloAccion').append('Editar Valor de Campo ID: ' + id);
|
$('#lbTituloAccion').append('Editar Valor de Campo ID: ' + id);
|
||||||
|
|
@ -147,7 +178,8 @@ this.ActualizarItem = function () {
|
||||||
|
|
||||||
Contenido = {
|
Contenido = {
|
||||||
IdContenido: $('#hiddenId').val(),
|
IdContenido: $('#hiddenId').val(),
|
||||||
Descripcion: $('#txtDescripcion').val()
|
Descripcion: $('#txtDescripcion').val(),
|
||||||
|
DescripcionLarga: $('#txtAreaDescripcionLarga').val()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -170,7 +202,8 @@ this.InsertarItem = function () {
|
||||||
TableItems = $('#TableItems').DataTable();
|
TableItems = $('#TableItems').DataTable();
|
||||||
Contenido = {
|
Contenido = {
|
||||||
Estado: 1,
|
Estado: 1,
|
||||||
Descripcion: $("#txtDescripcion").val()
|
Descripcion: $("#txtDescripcion").val(),
|
||||||
|
DescripcionLarga: $('#txtAreaDescripcionLarga').val()
|
||||||
}
|
}
|
||||||
|
|
||||||
var uri = CatalogosWCF + '/api/InsertarActualizarContenido';
|
var uri = CatalogosWCF + '/api/InsertarActualizarContenido';
|
||||||
|
|
@ -191,7 +224,10 @@ this.CompletarAccion = function () {
|
||||||
this.LimpiarControles = function () {
|
this.LimpiarControles = function () {
|
||||||
|
|
||||||
$('#txtDescripcion').val('');
|
$('#txtDescripcion').val('');
|
||||||
|
$('#txtAreaDescripcionLarga').val('');
|
||||||
|
|
||||||
$("#formCatalogo").validateElement("#txtDescripcion");
|
$("#formCatalogo").validateElement("#txtDescripcion");
|
||||||
|
$("#formCatalogo").validateElement("#txtAreaDescripcionLarga");
|
||||||
|
|
||||||
$('#lbTituloAccion').empty();
|
$('#lbTituloAccion').empty();
|
||||||
$('#lbTituloAccion').append('Ingresar Nuevo Contenido');
|
$('#lbTituloAccion').append('Ingresar Nuevo Contenido');
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@ this.CargarGridDocumentoTecnico = function (data) {
|
||||||
TableItems.row.add([stateIcon,
|
TableItems.row.add([stateIcon,
|
||||||
item.IdDocumentoTecnico,
|
item.IdDocumentoTecnico,
|
||||||
item.Descripcion,
|
item.Descripcion,
|
||||||
item.DescripcionLarga,
|
item.DescripcionLarga,
|
||||||
btnDescripcionLarga,
|
btnDescripcionLarga,
|
||||||
option]).draw();
|
option]).draw();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,17 @@ this.getDataModel = function () {
|
||||||
InsertarItem();
|
InsertarItem();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#btnDescripcionLarga").unbind("click");
|
||||||
|
$("#btnDescripcionLarga").click(function () {
|
||||||
|
$("#divRespuesta").empty();
|
||||||
|
$("#lblDescripcionLarga").text("Descripción");
|
||||||
|
$("#txtDescripcionLarga").val('');
|
||||||
|
|
||||||
|
|
||||||
|
$('#modalDescripcionLarga-footer').css("display", "block");
|
||||||
|
$('#modalDescripcionLarga').modal('show');
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
$('#TableItems').TableInit(0, false, true, true, false, null, null);
|
$('#TableItems').TableInit(0, false, true, true, false, null, null);
|
||||||
ObtenerGrupoTematico();
|
ObtenerGrupoTematico();
|
||||||
|
|
@ -45,6 +56,10 @@ this.CargarGridGrupoTematico = function (data) {
|
||||||
|
|
||||||
$.each(lista, function (key, item) {
|
$.each(lista, function (key, item) {
|
||||||
|
|
||||||
|
var btnDescripcionLarga = $("#ucbtDescripcionLarga").html();
|
||||||
|
btnDescripcionLarga = replaceAll("[$DescripcionLarga]", item.DescripcionLarga, btnDescripcionLarga);
|
||||||
|
|
||||||
|
|
||||||
var option = $("#ucItemsCatalogo").html();
|
var option = $("#ucItemsCatalogo").html();
|
||||||
|
|
||||||
option = replaceAll("[$CodItem]", item.IdGrupoTematico, option);
|
option = replaceAll("[$CodItem]", item.IdGrupoTematico, option);
|
||||||
|
|
@ -67,10 +82,15 @@ this.CargarGridGrupoTematico = function (data) {
|
||||||
option = replaceAll("[$icon]", "fa-times", option);
|
option = replaceAll("[$icon]", "fa-times", option);
|
||||||
option = replaceAll("[$value]", "0", option);
|
option = replaceAll("[$value]", "0", option);
|
||||||
}
|
}
|
||||||
|
|
||||||
TableItems.column(1).visible(false);
|
TableItems.column(1).visible(false);
|
||||||
|
TableItems.column(3).visible(false);
|
||||||
|
|
||||||
TableItems.row.add([stateIcon,
|
TableItems.row.add([stateIcon,
|
||||||
item.IdGrupoTematico,
|
item.IdGrupoTematico,
|
||||||
item.Descripcion,
|
item.Descripcion,
|
||||||
|
item.DescripcionLarga,
|
||||||
|
btnDescripcionLarga,
|
||||||
option]).draw();
|
option]).draw();
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
@ -78,6 +98,14 @@ this.CargarGridGrupoTematico = function (data) {
|
||||||
ENDREQUEST();
|
ENDREQUEST();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.VerDescripcionLarga = function (DescripcionLarga) {
|
||||||
|
|
||||||
|
$("#txtDescripcionLarga").val(DescripcionLarga);
|
||||||
|
$('#modalDescripcionLarga').modal('show');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
this.ObtenerGrupoTematico = function () {
|
this.ObtenerGrupoTematico = function () {
|
||||||
|
|
||||||
var uri = CatalogosWCF + '/api/ObtenerGrupoTematico';
|
var uri = CatalogosWCF + '/api/ObtenerGrupoTematico';
|
||||||
|
|
@ -95,8 +123,10 @@ this.EditarItem = function (id) {
|
||||||
|
|
||||||
$('#hiddenId').val(id)
|
$('#hiddenId').val(id)
|
||||||
$('#txtDescripcion').val(TableItems.cell(indexes, 2).data());
|
$('#txtDescripcion').val(TableItems.cell(indexes, 2).data());
|
||||||
|
$('#txtAreaDescripcionLarga').val(TableItems.cell(indexes, 3).data());
|
||||||
|
|
||||||
$("#formCatalogo").validateElement("#txtDescripcion");
|
$("#formCatalogo").validateElement("#txtDescripcion");
|
||||||
|
$("#formCatalogo").validateElement("#txtAreaDescripcionLarga");
|
||||||
|
|
||||||
$('#lbTituloAccion').empty();
|
$('#lbTituloAccion').empty();
|
||||||
$('#lbTituloAccion').append('Editar Valor de Campo ID: ' + id);
|
$('#lbTituloAccion').append('Editar Valor de Campo ID: ' + id);
|
||||||
|
|
@ -147,7 +177,8 @@ this.ActualizarItem = function () {
|
||||||
|
|
||||||
GrupoTematico = {
|
GrupoTematico = {
|
||||||
IdGrupoTematico: $('#hiddenId').val(),
|
IdGrupoTematico: $('#hiddenId').val(),
|
||||||
Descripcion: $('#txtDescripcion').val()
|
Descripcion: $('#txtDescripcion').val(),
|
||||||
|
DescripcionLarga: $('#txtAreaDescripcionLarga').val()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -171,7 +202,8 @@ this.InsertarItem = function () {
|
||||||
|
|
||||||
GrupoTematico = {
|
GrupoTematico = {
|
||||||
Estado: 1,
|
Estado: 1,
|
||||||
Descripcion: $("#txtDescripcion").val()
|
Descripcion: $("#txtDescripcion").val(),
|
||||||
|
DescripcionLarga: $('#txtAreaDescripcionLarga').val()
|
||||||
}
|
}
|
||||||
|
|
||||||
var uri = CatalogosWCF + '/api/InsertarActualizarGrupoTematico';
|
var uri = CatalogosWCF + '/api/InsertarActualizarGrupoTematico';
|
||||||
|
|
@ -192,7 +224,11 @@ this.CompletarAccion = function () {
|
||||||
this.LimpiarControles = function () {
|
this.LimpiarControles = function () {
|
||||||
|
|
||||||
$('#txtDescripcion').val('');
|
$('#txtDescripcion').val('');
|
||||||
|
$('#txtAreaDescripcionLarga').val('');
|
||||||
|
|
||||||
$("#formCatalogo").validateElement("#txtDescripcion");
|
$("#formCatalogo").validateElement("#txtDescripcion");
|
||||||
|
$("#formCatalogo").validateElement("#txtAreaDescripcionLarga");
|
||||||
|
|
||||||
|
|
||||||
$('#lbTituloAccion').empty();
|
$('#lbTituloAccion').empty();
|
||||||
$('#lbTituloAccion').append('Ingresar Nuevo Grupo Temático');
|
$('#lbTituloAccion').append('Ingresar Nuevo Grupo Temático');
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,8 @@
|
||||||
<th></th>
|
<th></th>
|
||||||
<th class="col-sm-1">ID</th>
|
<th class="col-sm-1">ID</th>
|
||||||
<th class="col-sm-4">Descripción</th>
|
<th class="col-sm-4">Descripción</th>
|
||||||
@*<th class="col-sm-4">Tipo Emisor</th>*@
|
<th class="col-sm-4">Detalle</th>
|
||||||
|
<th></th>
|
||||||
<th></th>
|
<th></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
|
@ -55,9 +56,7 @@
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
@*Descripción*@
|
@*Descripción*@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-4 control-label ControlsForms">Descripción</label>
|
<label class="col-sm-4 control-label ControlsForms">Descripción</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
|
|
@ -65,6 +64,16 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@*--------------------- Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="form-group " id="divAreaDescripcionLarga">
|
||||||
|
<label class="col-sm-4 control-label ControlsForms" id="lblAreaDescripcionLarga">Detalle</label>
|
||||||
|
<div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6">
|
||||||
|
<textarea name="txtAreaDescripcionLarga" rows="8" cols="31" id="txtAreaDescripcionLarga" style="resize: none"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-md-2"></label>
|
<label class="col-md-2"></label>
|
||||||
<div class="col-md-4 ">
|
<div class="col-md-4 ">
|
||||||
|
|
@ -97,6 +106,48 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
<div id="ucbtDescripcionLarga" style=" display:none;">
|
||||||
|
<button type="button" id="btnDescripcionLarga" class="btn btn-default btn-xs" onclick="VerDescripcionLarga('[$DescripcionLarga]')" title="Ver Descripción ">
|
||||||
|
<i class="fa fa-search"></i> Ver
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@section Modals{
|
||||||
|
|
||||||
|
@*--------------------- Modal Ver Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="modal fade" id="modalDescripcionLarga" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title"> <i class="fa fa-comment-o"></i> Descripción </h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<form id="formDescripcionLarga">
|
||||||
|
|
||||||
|
@*--------------------- Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="form-group " id="divDescripcionLarga">
|
||||||
|
<label class="col-sm-4 control-label ControlsForms" id="lblDescripcionLarga">Descripción</label>
|
||||||
|
<div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6">
|
||||||
|
<textarea name="txtDescripcionLarga" rows="8" cols="45" id="txtDescripcionLarga" readonly style="resize: none"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal-footer" id="modalDescripcionLarga-footer">
|
||||||
|
<button type="button" class="btn btn-danger btn-sm" data-dismiss="modal">Cerrar</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Scripts.Render("~/Sinort-Scripts/Contenido.js")
|
@Scripts.Render("~/Sinort-Scripts/Contenido.js")
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,8 @@
|
||||||
<th></th>
|
<th></th>
|
||||||
<th class="col-sm-1">ID</th>
|
<th class="col-sm-1">ID</th>
|
||||||
<th class="col-sm-4">Descripción</th>
|
<th class="col-sm-4">Descripción</th>
|
||||||
@*<th class="col-sm-4">Tipo Emisor</th>*@
|
<th class="col-sm-4">Detalle</th>
|
||||||
|
<th></th>
|
||||||
<th></th>
|
<th></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
|
@ -55,9 +56,7 @@
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
@*Descripción*@
|
@*Descripción*@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-4 control-label ControlsForms">Descripción</label>
|
<label class="col-sm-4 control-label ControlsForms">Descripción</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
|
|
@ -65,6 +64,15 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@*--------------------- Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="form-group " id="divAreaDescripcionLarga">
|
||||||
|
<label class="col-sm-4 control-label ControlsForms" id="lblAreaDescripcionLarga">Detalle</label>
|
||||||
|
<div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6">
|
||||||
|
<textarea name="txtAreaDescripcionLarga" rows="8" cols="31" id="txtAreaDescripcionLarga" style="resize: none"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-md-2"></label>
|
<label class="col-md-2"></label>
|
||||||
<div class="col-md-4 ">
|
<div class="col-md-4 ">
|
||||||
|
|
@ -97,6 +105,46 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
<div id="ucbtDescripcionLarga" style=" display:none;">
|
||||||
|
<button type="button" id="btnDescripcionLarga" class="btn btn-default btn-xs" onclick="VerDescripcionLarga('[$DescripcionLarga]')" title="Ver Descripción ">
|
||||||
|
<i class="fa fa-search"></i> Ver
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@section Modals{
|
||||||
|
|
||||||
|
@*--------------------- Modal Ver Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="modal fade" id="modalDescripcionLarga" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title"> <i class="fa fa-comment-o"></i> Descripción </h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<form id="formDescripcionLarga">
|
||||||
|
|
||||||
|
@*--------------------- Descripcion Larga ---------------------------------------------------------*@
|
||||||
|
<div class="form-group " id="divDescripcionLarga">
|
||||||
|
<label class="col-sm-4 control-label ControlsForms" id="lblDescripcionLarga">Descripción</label>
|
||||||
|
<div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6">
|
||||||
|
<textarea name="txtDescripcionLarga" rows="8" cols="45" id="txtDescripcionLarga" readonly style="resize: none"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal-footer" id="modalDescripcionLarga-footer">
|
||||||
|
<button type="button" class="btn btn-danger btn-sm" data-dismiss="modal">Cerrar</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Scripts.Render("~/Sinort-Scripts/GrupoTematico.js")
|
@Scripts.Render("~/Sinort-Scripts/GrupoTematico.js")
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue