Crystal Reports подключается к нескольким серверам и базе данных, но с одинаковым именем таблицы - PullRequest
0 голосов
/ 08 июля 2019

У меня несколько серверов и баз данных (разные имена), но все имена таблиц баз данных совпадают.Я хотел передать информацию о входе в базу данных в отчет Crystal во время выполнения.

Я попытался указать имя сервера и имя базы данных для отчета Crystal во время выполнения.Пользователь будет выбирать сервер, который он желает, перед входомНо отчет Crystal, кажется, не распознает имя сервера и имя базы данных, предоставленные кодом.А также я попробовал несколько кодов, которые я нашел в Google, которые, кажется, очень близки к тому, что я хотел, но есть 1 строка, в которой вышла ошибка, которую я не смог понять.

        private Database crDatabase;
        private Tables crTables;
        private CrystalDecisions.CrystalReports.Engine.Table crTable;
        private TableLogOnInfo crTableLogOnInfo;
        private ConnectionInfo crConnectionInfo = new ConnectionInfo();
        private CrystalReport1 crReportDocument = new CrystalReport1();



        public void setLogonInfo()
        {


            crConnectionInfo.ServerName = "'" + lblServer.Text.Trim() + "'";
            crConnectionInfo.DatabaseName = "'" + lblDatabase.Text.Trim() + "'";
            crConnectionInfo.UserID = "user";
            crConnectionInfo.Password = "user123";

            crDatabase = crReportDocument.Database;
            crTables = reportdocument.Database.Tables;

            for (int i = 0; i < crTables.Count; i++)
            {
                crTable = **crTables**;
                crTableLogOnInfo = crTable.LogOnInfo;
                crTableLogOnInfo.ConnectionInfo =
                crConnectionInfo;
                crTable.ApplyLogOnInfo(crTableLogOnInfo);
                crTable.Location = crConnectionInfo.DatabaseName + ".dbo." + crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1);
            }

            CrystalReportViewer.ReportSource = crReportDocument;
        }

Внутри дляфункция, crTable = crTables;вышли сообщения об ошибках.«Невозможно скрыть преобразование типа« CrystalDecisions.CrystalReports.Engine.Tables »в« CrystalDecisions.CrystalReports.Engine.Table »»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...