2009-10-15 45 views
6

Tengo un informe de cristal que se basa en un archivo de esquema XSD.Cambie dinámicamente la ruta de archivo XSD en Crystal Reports

Dentro de la definición del informe, puedo modificar la ubicación del origen de datos, específicamente, la ruta del archivo. Aquí es donde puedo establecer la ruta del archivo donde reside el archivo de esquema XSD en mi máquina.

En este punto, todo funciona correctamente.

Aquí está el problema:

Si no existe la ruta del archivo, el informe tiene un error de ejecución.

Esto plantea problemas, específicamente, con la implementación ya que mi entorno de desarrollo local es físicamente diferente del entorno de prueba/en vivo. es decir, las rutas de archivo son muy diferentes y no quiero confiar en una ruta de archivo 'codificada'.

Mi pregunta es, me gustaría saber cómo puedo cambiar esta ruta de archivo dinámicamente (en código) o configurarla en la definición del informe de manera que sea relativa a dónde está el informe.

+0

¿Qué versión de Crystal está usando? –

Respuesta

1

La manera más fácil sería establecer que la ubicación del origen de datos sea la misma que la ubicación del archivo de informe. Cuando abre el cuadro de diálogo Establecer ubicación de origen de datos, expanda el cuadro de propiedades más, luego haga clic con el botón derecho en el nombre de la ruta del archivo y elija "Igual que informe".

0

utilizar por debajo de código de ejemplo para configurar dinámicamente XML o XSD

ReportDocument crReportDoc.DataSourceConnections[0].SetConnection(p_XMLDocument + " " + tdgDoc_XSD, "", null, ""); 
// crReportDoc.DataSourceConnections[0].SetConnection(p_XMLDocument + " " + tdgDoc_XSD, "", null, ""); 
NameValuePairs2 logon = new NameValuePairs2(); 
logon.Set("QE_ServerDescription", p_XMLDocument + " " + tdgDoc_XSD); 
logon.Set("Local Schema File", tdgDoc_XSD); 
logon.Set("Local XML File", p_XMLDocument); 
crReportDoc.DataSourceConnections[0].SetLogonProperties(logon); 
+2

Puede que necesite mejorar el formato de su código –

Cuestiones relacionadas