Pregunta

Estamos desarrollando una aplicación Winforms multilingüe usando Visual Studio 2008. Estoy tratando de descubrir cómo puedo crear informes multilingües usando Crystal Reports.

¿Hay algo similar a los archivos de recursos .net en el mundo de Crystal Reports?

¿Fue útil?

Solución

Lamento haberte robado tu insignia de planta rodadora, pero no creo que Crystal tenga la compatibilidad con varios idiomas similar a .NET. Creo que su única opción es tener un informe separado para cada idioma y pasar los datos al informe en el idioma que desea mostrar.

Aquí hay un enlace de una respuesta similar. http://www.dbforums.com/crystal- Reports / 991737-crystal-report-multillingual-support.html

Otros consejos

Esta sería una forma manual de hacer esto:

  1. Cree un informe para cada idioma que desee y póngalo en la estructura de carpetas adecuada. es decir, todos los informes japoneses irán a la carpeta rpt_ja /.

    Estructura de la carpeta de informes

  2. Utilice el archivo de recursos .Net para especificar el nombre del recurso del informe y el nombre completo del recurso para cada idioma:

    • resource.resx

      RPT_SAMPLE - > report01.rpt

      RPT_SAMPLE_FULL - > MyCompany.NameSpace.Reports.Report01.rpt

    • resource.ja.resx

      RPT_SAMPLE - > rpt_ja \ report01.ja.rpt

      RPT_SAMPLE_FULL - > MyCompany.NameSpace.Reports.Report01.ja.rpt

  3. Luego use este valor en el archivo de código de informe: abra el archivo .cs de informe y cambie:

    public override string ResourceName {
    get {
        // Change this to HttpContext.GetGlobalResourceObject("Resource", "RPT_SAMPLE").ToString();
        return "report01.rpt";
    }
    set {
        // Do nothing
    }
    

    }

    public override string FullResourceName {
        get {
            // Change this to HttpContext.GetGlobalResourceObject("Resource", "RPT_SAMPLE_FULL").ToString();
            return "rpt_ja\report01.ja.rpt";
        }
        set {
            // Do nothing
        }
    }
    

EDITAR: HttpContext es para la aplicación web ASP.Net. En winform, puede probar Properties.Resources.ResourceManager.GetString () para obtener la cadena de recursos

Un cliente me pide una solución a este problema. Desarrollé una solución basada en las palabras clave de Crystal Reports contentLocale y las funciones personalizadas. Vea mi publicación: http://www.cogniza.com/blog/?p=55 .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top