У меня есть раскрывающийся список в форме InfoPath, и я загружаю некоторые другие поля в зависимости от выбора раскрывающегося списка. так что я написал следующий код для «измененного» события выпадающего списка.
public void ProjectName_Changed(object sender, XmlEventArgs e)
{
string projectId = e.NewValue;
dataQueryConnection = (AdoQueryConnection)this.DataConnections["ProjectInformation"];
dataQueryConnection.Command = dataQueryConnection.Command + string.Format(" WHERE ProjectId = '{0}'", projectId);
dataQueryConnection.Execute();
}
В первый раз, когда я изменяю элемент в раскрывающемся списке, он работает нормально, но при последующих изменениях элементов (второй раз и т. Д.) Выдается следующая ошибка:
Запрос не может быть запущен для
следующий DataObject:
ProjectInformation InfoPath не может быть запущен
указанный запрос.
[0x80040E14] [Microsoft OLE DB Provider
для SQL Server] Неверный синтаксис рядом
ключевое слово "ГДЕ".
И это причина, во второй раз,
dataQueryConnection.Command = select
"КодСотрудник", "AccountName", "Имя_проект", "ProjectID", "ProjectRole", "BillableUtilization", "Имя_клиент", "BillingCode", "BUHead"
из "TRF". "hrt_vw_ProjectInformation"
как "hrt_vw_ProjectInformation" ГДЕ
ProjectId = '3072507' ГДЕ ProjectId
= '3076478'
последующее событие, запускающее каждый раз предложение WHERE с предыдущим выполненным запросом.
Как я могу решить этот вопрос?