Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Удаление строк в таблице по условиям
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
llirik_87
Здравствуйте!
Ситуация такая:
У меня 1С 8.1. Есть таблица ТАБ1, являющаяся результатом выборки:

Наименование    Артикул    Оригинал
Стол                     А1            А111
Стол                     А1            Нет
Стол                     А1            Нет
Кровать                К5            К321
Полка                   П4            Нет


Мне нужно из нее поудалять стоки по условиям:
1) если в строке в колонке Оригинал НЕ стоит "Нет" , то удалить эту строку
2) если в есть строки в которых одиноковы значения в колонках Наименование и Артикул и хотябы в одной из них в колонке Оригинал НЕ стоит "Нет" , то удалить все эти строи

Т.е. в итоге нужно чтоб получилась таблица:

Наименование    Артикул     Оригинал
Полка                    П4            Нет

Как это можно сделать?
sava1
Проще всего в запросе
ignsv
както так:
ВЫБРАТЬ
    "Стол" КАК Наименование,
    "А1" КАК Артикул,
    "А111" КАК Оригинал
ПОМЕСТИТЬ СписокНом

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Стол",
    "А1",
    "НЕТ"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Стол",
    "А1",
    "НЕТ"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Кровать",
    "К5",
    "К321"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Полка",
    "П4",
    "НЕТ"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    СписокНом.Наименование,
    СписокНом.Артикул,
    СписокНом.Оригинал КАК Оригинал,
    КОЛИЧЕСТВО(СписокНом.Артикул) КАК АртикулКолво,
    КОЛИЧЕСТВО(СписокНом.Оригинал) КАК ОригиналКолво
ПОМЕСТИТЬ ПромежуточныеРасчеты
ИЗ
    СписокНом КАК СписокНом

СГРУППИРОВАТЬ ПО
    СписокНом.Наименование,
    СписокНом.Артикул,
    СписокНом.Оригинал
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПромежуточныеРасчеты.Наименование,
    ПромежуточныеРасчеты.Артикул,
    ПромежуточныеРасчеты.Оригинал
ИЗ
    ПромежуточныеРасчеты КАК ПромежуточныеРасчеты
ГДЕ
    ПромежуточныеРасчеты.АртикулКолво = 1
    И ПромежуточныеРасчеты.ОригиналКолво = 1
    И ПромежуточныеРасчеты.Оригинал = "НЕТ"
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.