Показать сообщение отдельно
Старый 18.06.2007, 17:39   #1  
m_ax is offline
m_ax
Участник
 
4 / 10 (1) +
Регистрация: 18.06.2007
Заполнение DataSource из постоянной и временной таблиц
Всем добрый день!
Подскажите, пожалуйста, можно ли заполнять DataSource сначала на основании постоянной таблицы, а затем на временной? У меня следующая ситуация. Перекрыт метод executeQuery() на этом DataSource, и в зависимости от значения галки заполнение происходит из постоянной таблицы или временной (это та же постоянная таблица, преобразованная во временную). По-умолчанию галки нет.

X++:
if(!ActualDateCheck.value())
    {
        dataSource = this.query().dataSourceNo(1);
        dataSource.clearRanges();
        LanguageRange = dataSource.addRange(fieldnum(my_BankAccounts, LanguageId));
        ArchiveRange  = dataSource.addRange(fieldnum(my_BankAccounts, IsArchive));
        DeleteRange   = dataSource.addRange(fieldnum(my_BankAccounts, IsDelete));
        LanguageRange.Value(queryvalue(my_Languages::Ru));
        ArchiveRange.value(queryvalue(NoYes::No));
        DeleteRange.value(queryvalue(NoYes::No));
    }
    else
    {
        my_BankAccounts.setTmp();
        tmpTable.setTmp();
        my_BankAccounts.setTmpData(tmpTable);
        while select BankId, maxOf(RecId) from bankAccounts_vw group by BankId where
            bankAccounts_vw.createdDate <= ActualDate.dateValue()
        {
            select bankAccounts_Real where bankAccounts_Real.RecId == bankAccounts_vw.RecId;
            my_BankAccounts.data(bankAccounts_Real);
            my_BankAccounts.insert();
        }
    }
    super();
При открытии формы, выполняется первая часть условия. На форме выводятся данные из таблицы в соответствии с заданными Range-ми. Затем мы проставляем галку и вводим дату, в modified() поля даты вызываем executeQuery(), выполняется вторая часть условия. Но данные на форме не меняются.
Подскажите, что нужно сделать, чтобы данные перерисовывались в соответствии со вторым запросом?

Последний раз редактировалось m_ax; 18.06.2007 в 17:42. Причина: Поправил форматирование