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

программно удалить помеченные на удаление товар

Автор sali, 22 сен 2024, 14:47

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

sali

здравствуйте,  я новичок в этом и не знаю как правильно написать запрос по своему вопросу 
я создаю обработку и на форме обработки кнопку. действием на кнопке нужно получить запросом всю номенклатуру помеченную на удаление, штрих-коды по этой номенклатуре и по весу (другой регистр сведений).

sali

вот как списком мне получить номенклатуру найденную?

sali

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

&НаСервере
Процедура УдалитьНоменклатуруНаСервере()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ *
|ИЗ             
| Справочник.Номенклатура КАК Номенклатура";

РезультатЗапроса = Запрос.Выполнить();

выборка = РезультатЗапроса.Выбрать();

Пока выборка.Следующий() Цикл

сообщить("номенклатура"+выборка.наименование);
КонецЦикла;
КонецПроцедуры

пока у меня только такой код :dfbsdfbsdf:

Optiman

    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    СправочникНоменклатура.Ссылка КАК Номенклатура,
        |    СправочникНоменклатура.Наименование КАК Наименование,
        |    ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод
        |ИЗ
        |    Справочник.Номенклатура КАК СправочникНоменклатура
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
        |        ПО СправочникНоменклатура.Ссылка = ШтрихкодыНоменклатуры.Номенклатура
        |ГДЕ
        |    СправочникНоменклатура.ПометкаУдаления = ИСТИНА";
   
    РезультатЗапроса = Запрос.Выполнить();
   
    Выборка = РезультатЗапроса.Выбрать();
   
    Пока Выборка.Следующий() Цикл
        Сообщить("Номенклатура: " + Выборка.Наименование);
        Сообщить("Штрих код: " + Выборка.Штрихкод);
    КонецЦикла;

С единицами измерения аналогично. Я не знаю, в каком регистре хранятся в вашей базе единицы измерения.

sali

Optiman, имеете ввиду про вес? в случае если номенклатура весовая

Optiman

sali, да. Ресурс, где хранится вес, надо смотреть в вашей базе. Я не знаю название регистра сведений, поэтому не могу привести пример кода.

Optiman

Цитата: sali от 23 сен 2024, 09:09в случае если номенклатура весовая
по-сути, это не имеет значения, т.к. всё равно будет левое соединение с регистром сведений. Если есть запись в регистре, прилетит вес. Если нет - прилетит Null.

sali

Optiman,
смотрите, здесь правильно делаю?
&НаКлиенте
Процедура УдалитьНоменклатуру(Команда)
    список = УдалитьНоменклатуруНаСервере();
КонецПроцедуры

&НаСервере
Функция УдалитьНоменклатуруНаСервере() 
       Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    СправочникНоменклатура.Ссылка КАК Номенклатура,
        |    СправочникНоменклатура.Наименование КАК Наименование,
        |    ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод,
        |    ШтрихкодыНоменклатуры.Характеристика КАК Характеристика
        |ИЗ
        |    Справочник.Номенклатура КАК СправочникНоменклатура
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
        |        ПО СправочникНоменклатура.Ссылка = ШтрихкодыНоменклатуры.Номенклатура
        |ГДЕ
        |    СправочникНоменклатура.ПометкаУдаления = ИСТИНА";
    РезультатЗапроса = Запрос.Выполнить();
   
    Выборка = РезультатЗапроса.Выбрать();

    Пока Выборка.Следующий() Цикл
        Список = Новый СписокЗначений;
        Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Наименование"));
        Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Характеристика"));
        Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("штрихкод"));

    КонецЦикла;   
    Возврат Список;

КонецФункции

я выгружаю наименование, характеристику и штрихкод
эта форма данной обработкиКонфигуратор - Розница для Кыргызстана, редакция 3.0 23.09.2024 13_48_58.png
но не выводит ничего , то есть все приходит , но не отражает 

sali

скорее лучше таблицу сделать, да?
или как?

Максим75

sali, ну у Вас список создается, а на форму Вы же его не визуализировали.
сделайте для удобства выгрузку в таблицу значений и выведите ее на форму, на посмотреть.

Теги:

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

Рейтинг@Mail.ru

Поиск