0
1

Actualmente tengo el botón nuevo que ejecuta el procedimiento almacenado. El procedimiento se llama correctamente, sin embargo, no sé como obtener el código del registro seleccionado y enviar dicho código a mi procedimiento almacenado.

asked 23 Nov '16, 13:04

Jimy%20Tobar's gravatar image

Jimy Tobar ♦♦
(suspended)
accept rate: 56%


La infraestructura que integra el SmartList con la ejecución de procedimientos almacenado o la generación de reportes permite enviar el registro seleccionado directamente al reporte, sin necesidad de que vuelva a preguntar al usuario el código del registro seleccionado.

Un ejemplo se puede ver en la vista:

\Areas\ClimaOrganizacional\Views\EncuestaClima\Index.cshtml

Allí se ejecuta un SP enviando el código de la encuesta de clima seleccionada en el SmartList.

@{ Html.SmartList("smlAdminResultadosEncuestas", "ClimaOrganizacional.AdminResultadosEncuestas", new Dictionary<string, string> { { "calculoPromedio", "ejecutarCalculoPromedio" }, { "imprimirEncuestaClima", "imprimirEncuestaClima" }, { "llenarEncuestaManual", "llenarEncuestaManual" } }); }

@{ Html.PrepararEjecucionProcedimientoAlmacenado("ejecutarCalculoPromedio", "CalculoPromediosEncuestaClima", false, new SmartlistParameter("codaen")); }

Este código que se muestra es todo el JavaScript necesario para configurar la vista y que se ejecute el procedimiento almacenado; y la experiencia del usuario es que selecciona el registro y se ejecuta un proceso con el registro seleccionado.

link

answered 24 Nov '16, 22:09

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635
accept rate: 51%

Se envían como parámetro a la función Javascript que configuraste en el Helper del SmartList.

function copiarPlaza(sender, e)

El parámetro 'e' lleva la clase con los datos del(los) registro(s) seleccionado(s)

e.codigos[####]

Por ejemplo, este es un extracto del SmartLIst de Plazas:

<script type="text/javascript">
    . . .

    function copiarPlaza(sender, e) {
        $('#<%= Constants.MessagesDivName%>').empty();
        $.get('<%= Url.Action("CrearCopiasDePlaza", "Plaza") %>', { codigoPlaza: e.codigos[0] }, function (response) {
            $('#jDialogCopiaPlaza').html(response).dialog('open');
        });
    }

    . . .

</script>
    <% Html.SmartList("smlPlaza", "Estructura.Plazas", 
       new Dictionary<string, string> { { "copiarPlaza", "copiarPlaza" } }); %>
    <div id="jDialogCopiaPlaza"></div>
</asp:Content>
link

answered 23 Nov '16, 15:44

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635
accept rate: 51%

Gracias Fernando no se si esto es considerando recibir el parámetro en el controller, el cambio que estoy haciendo es desde fuera sin tocar el fuente.

(24 Nov '16, 07:45) Jimy Tobar ♦♦ Jimy%20Tobar's gravatar image

Lo que hice fue mejor mostrarle una lista de valores donde el seleccione (después que le da clic al botón en el smartlist) el valor (que se configuró en la pantalla de administración de procedimientos almacenados) y luego si lo ejecuta.

(24 Nov '16, 15:10) Jimy Tobar ♦♦ Jimy%20Tobar's gravatar image

Esta bien, pero la infraestructura te permite enviar el parámetro de manera automática al dialogo de ejecución de procedimientos. Yo te respondí con ese ejemplo porque tu pregunta era: como obtener el código del registro seleccionado?

(24 Nov '16, 21:55) Fernando Paz ♦♦ Fernando%20Paz's gravatar image
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Evolution en BitBucket

En este sitio puede acceder al código fuente, centro de descargas y reportar bugs, propuestas y mejoras para Evolution.

Evolution en JIRA

En este sitio puedes sugerir nueva funcionalidad para Evolution, o puedes votar por la funcionalidad ya propuesta por otros usuarios.

Tags:

×47
×5
×4

Asked: 23 Nov '16, 13:04

Seen: 780 times

Last updated: 24 Nov '16, 22:09

[Acerca de] [Preguntas Frecuentes] [Privacidad] [Soporte] [Contacto]
Copyright 2013-2018. Asesores en Informática