Evolution 1.11.1.2 DB MSSQL

Existe un problema con el lenguaje de Evolution y las fechas, el problema se me presento en la pantalla Prorroga de Contrato pues existe un espacio donde en el jquery se convierte la fecha que viene para utilizarla como nueva fecha de otro campo

function obtenerHistorialContratacionesEmpleo(codigoEmpleo) {
    if (codigoEmpleo != null && codigoEmpleo.length > 0) {
        $.get('<%= Url.Action("DetailsContratacion", "Empleado", new { area = "Expedientes" }) %>', { codigoEmpleoAMostrar: codigoEmpleo }, function(response) {
            $('#detalleContratacionesEmpleo').html(response);
            var valorFechaFin = $('#FechaFin').val();
            if (!cargaInicial || valorFechaFin == null || valorFechaFin.length == 0) {
                    var $ultimaProrroga = $('#ultimaContratacion_' + codigoEmpleo, $('#detalleContratacionesEmpleo'));
                    var fechaFinUltimaContratacion = $('#fechaFinUltimaContratacion_' + codigoEmpleo, $ultimaProrroga).html();
                    if (fechaFinUltimaContratacion != null && fechaFinUltimaContratacion.length > 0) {
                        var fechaInicioProrroga = new Date(new Date(Globalize.parseDate(fechaFinUltimaContratacion)).setDate(Globalize.parseDate(fechaFinUltimaContratacion).getDate() + 1));
                        $('#FechaInicio').val(Globalize.format(fechaInicioProrroga, 'd'));
                    }
            }
            cargaInicial = false;
        });
    }
}

El campo fechaFinUltimaContratacion cuando esta en español viene en lenguaje dd/mm/yyyy y no da error pero cuando esta en lenguaje español panamá viene en format dd/mm/yy y esto causa un error con el getDate() que no reconoce ese formato.

La solución poco elegante que se dio es separa la fecha y volver a crearla con el formato correcto utilizando cadenas, esto debido a que no se que librerías de fechas están disponibles en Evolution para javascript o jquery, quisiera saber si ¿existe algún otra solución para este inconveniente?

Edit:

Si la solución va a ser modificar la vista, ¿existe alguna forma de obtener el locale seleccionado por el usuario?

Edit: Fechas reportes alt text

asked 06 Jun '18, 10:43

MiguelBustamante's gravatar image

MiguelBustamante
52183109116
accept rate: 31%

edited 07 Jun '18, 16:24

Para que lo tomen en cuenta, yo reporté un caso similar y la solución que le di al Usuario fue no utilizar "Español (Panamá)" https://qa.aseinfo.net/osqa/questions/5040/como-puedo-hacer-que-el-idioma-reconozca-un-formato-de-fecha-diamesano

(06 Jun '18, 13:17) Henry Sandoval Henry%20Sandoval's gravatar image

En este caso lo que sucede es que han adaptado de cierta forma Evolution con el lenguaje Español(Panamá), al ser una empresa multipais tienen diferentes Españoles para los distintos países.

(06 Jun '18, 13:32) MiguelBustamante MiguelBustamante's gravatar image

Podrías realizar la modificación del archivo:

C:\inetpub\wwwroot\Evolution\Web\Scripts\cultures\globalize.culture.es-PA.js

Y modificar la seccion "patterns" y dentro de este el formato para "d" colcando el formato "MM/dd/yyyy", y dejarla de esta forma:

patterns: {
                d: "MM/dd/yyyy",
                D: "dddd, dd' de 'MMMM' de 'yyyy",
                t: "hh:mm tt",
                T: "hh:mm:ss tt",
                f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
                F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
                M: "dd MMMM",
                Y: "MMMM' de 'yyyy"
            }

Luego modificar el archivo C:inetpubwwwrootEvolutionViewsSharedDatePicker.ascx, reemplazar todo el código javascript

<script type="text/javascript">
    $(document).ready(function() {
        setTimeout(function() {
            $("#<%= ViewData.TemplateInfo.GetFullHtmlFieldId(Model.FieldName) %>").datepicker($.extend({ showOn: 'button', buttonImage: '<%= Html.MakeAbsoluteURL("/Content/Images/Common/datepick.png") %>', buttonImageOnly: true }, $.datepicker.regional['<%= GlobalizationManager.CurrentCulture.TwoLetterISOLanguageName == "en" ? string.Empty : GlobalizationManager.CurrentCulture.TwoLetterISOLanguageName %>']));
        }, 0);
    });
</script>

por este otro:

<script type="text/javascript">
    $(document).ready(function() {
        setTimeout(function() {
            $("#<%= ViewData.TemplateInfo.GetFullHtmlFieldId(Model.FieldName) %>").datepicker($.extend(
                {},
                $.datepicker.regional['<%= GlobalizationManager.CurrentCulture.TwoLetterISOLanguageName == "en" ? string.Empty : GlobalizationManager.CurrentCulture.TwoLetterISOLanguageName %>'],
                {
                    dateFormat: "<%= GlobalizationManager.CurrentCulture.DateTimeFormat.ShortDatePattern.ToLower().Replace("yyyy", "yy") %>",
                    showOn: 'button', buttonImage: '<%= Html.MakeAbsoluteURL("/Content/Images/Common/datepick.png") %>',
                    buttonImageOnly: true
                }));
        }, 0);
    });
</script>

Luego tendrías que deshacer los cambios que has realizado sobre la vista de la prorroga

link

answered 06 Jun '18, 19:50

glemus's gravatar image

glemus
(suspended)
accept rate: 51%

edited 07 Jun '18, 17:13

Muchas gracias, se cambio el de fecha (d) a "dd/MM/yy" y efectivamente controla el error.

(07 Jun '18, 07:25) MiguelBustamante MiguelBustamante's gravatar image

Una consulta, en esta parte GlobalizationManager.CurrentCulture.DateTimeFormat.ShortDatePattern.ToLower().Replace("yyyy", "yy")

No veo un condicionamiento para un tipo de español, como hablamos arriba, esto no sucede para los otros españoles y solo se esta modificando para el de Panamá. La consulta seria, esto no modificaría para los otros españoles donde si funciona el formato "yyyy"

(07 Jun '18, 17:23) MiguelBustamante MiguelBustamante's gravatar image

Ese es el para el formato de la fecha y la la parte de GlobalizationManager.CurrentCulture.DateTimeFormat.ShortDatePattern regresa el formato que es valido para la cultura seleccionada

(07 Jun '18, 17:28) glemus glemus's gravatar image

Ok entonces, vemos que obtenemos la cultura y el patrón, pero al final haces un replace. Lo que me indica que todos los lenguajes que no sean "en" serán modificados a "yy". Pero para español colombia, el formato correcto es "yyyy", no se va a ver afectado?

(07 Jun '18, 17:36) MiguelBustamante MiguelBustamante's gravatar image

No, porque el formato "yyyy" para la configuración del DatePicker no es valido, el espera unicamente dos letras para el formato, en este caso es "mm/dd/yy" para español sería "dd/mm/yy"

(07 Jun '18, 17:41) glemus glemus's gravatar image

Se ha creado el issue EVO-3734 para darle solucion al caso presentado

link

answered 06 Jun '18, 16:02

sbarahona's gravatar image

sbarahona ♦♦
(suspended)
accept rate: 32%

edited 06 Jun '18, 19:39

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635

Debo informar que aunque se soluciono el inconveniente para la pagina de prorroga de contratos, no modifica el formato a todo nivel por lo que los reporte dejaron de funcionar.

(07 Jun '18, 15:04) MiguelBustamante MiguelBustamante's gravatar image

que parte de los reportes? a que te refieres con que los reportes dejaron de funcionar?

(07 Jun '18, 15:50) glemus glemus's gravatar image

Los selectores de fechas dan el formato incorrecto, coloque una imagen arriba en el post principal

(07 Jun '18, 16:24) MiguelBustamante MiguelBustamante's gravatar image

Modifique la respuesta para darte una solución sobre ese problema

(07 Jun '18, 17:22) glemus glemus'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:

×7
×4

Asked: 06 Jun '18, 10:43

Seen: 592 times

Last updated: 07 Jun '18, 17:41

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