Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
08 мая 2026, 15:00

Формы и реквизиты

Автор Дмитрий Корнилов, Вчера в 18:27

0 Пользователей и 1 гость просматривают эту тему.

Дмитрий Корнилов

Здравствуйте, помогите пожалуйста исправить код, что только не делал,в обработке III3IX.png


&НаСервере
Процедура ЗаполнитьДокументыПКОНаФорме()
   
    // 1. Очищаем таблицу перед новым заполнением
    Документы.Очистить();
   
    // 2. Определение порядка сортировки
    // Если ничего не выбрано, по умолчанию используем "Дата ВОЗР"
    ПеременнаяПорядок = "Дата ВОЗР";
    Если ПорядокСортировки = 1 Тогда
        ПеременнаяПорядок = "Дата УБЫВ";
    ИначеЕсли ПорядокСортировки = 2 Тогда
        ПеременнаяПорядок = "Дата ВОЗР";
    КонецЕсли;
   
    // 3. Настройка отбора
    СтруктураОтбора = Новый Структура;
    Если ЗначениеЗаполнено(Касса) Тогда
        // Если касса выбрана, добавляем её в фильтр
        СтруктураОтбора.Вставить("Касса", Касса);
    КонецЕсли;
   
    // 4. Выборка из базы данных
    // Параметры метода Выбрать: (ДатаНачала, ДатаОкончания, Отбор, Порядок)
    Выборка = Документы.ПриходноКассовыйОрдер.Выбрать( , , СтруктураОтбора, ПеременнаяПорядок);
   
    Пока Выборка.Следующий() Цикл
        НоваяСтрока = Документы.Добавить();
        ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка);
        // Явное заполнение ссылки для корректного отображения в колонке ПКО
        НоваяСтрока.Ссылка = Выборка.Ссылка;
    КонецЦикла;
   
КонецПроцедуры

&НаКлиенте
Процедура Результат(Команда)
    РезультатНаСервере();
КонецПроцедуры

&НаСервере
Процедура РезультатНаСервере()
    ЗаполнитьДокументыПКОНаФорме();
КонецПроцедуры

&НаКлиенте
Процедура КассаПриИзменении(Элемент)
    // Автоматическое обновление таблицы при выборе кассы
    ЗаполнитьДокументыПКОНаФорме();
КонецПроцедуры

antoneus

Не надо переменные и реквизиты формы называть так же, как свойства глобального контекста. Откуда 1С знать, что в строке

Документы.Очистить();
вы имеете в виду одно, а в строке

Выборка = Документы.ПриходноКассовыйОрдер.Выбрать( , , СтруктураОтбора, ПеременнаяПорядок);
другое?

Дмитрий Корнилов

antoneus, Да, и еще то есть вы предлагаете убрать Документы.Очистить();?

Дмитрий Корнилов

antoneus, Скажите что вы предлагаете

antoneus

Я предлагаю переименовать таблицу Документы и дать ей имя, которое не совпадает со свойством глобального контекста Документы.

Дмитрий Корнилов

antoneus, Слегка не понял, ибо я сделал вы сказали, но не работает

antoneus

"Не работает" - это что значит?

Дмитрий Корнилов


antoneus

Ну в этой-то строке надо было оставить Документы, т.е. Документы.ПриходноКассовыйОрдер.Выбрать(блаблабла).

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск