Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
27 Май 2018, 15:05
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Исключение данных из таблицы значений  (Прочитано 1918 раз)

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

Оффлайн Greiv

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-09
  • Сайт: 
  • Профессия: Ученик 1С
Приветствую. Есть задача из таблицы значений которую я передаю  в запрос исключить совпадающие записи с одним из регистров, есть проблема, дело в том, что записей совпадающих в таблицах очень много. То есть:
8783787878787 Бабенко Москва Ленина 1 квартира 1
0909090909090 Бабенко Москва Ленина 1 квартира 2
2112121211212 Бабенко Москва Ленина 1 квартира 3
Примерно так.
А в тз графы выглядят следующим образом:
Бабенко Москва Ленина 1
Бабенко Москва Ленина 2
Бабенко Москва Ленина 3

То есть функция должна мне вернуть:
Бабенко Москва Ленина 2
Бабенко Москва Ленина 3

А вот собственно сама функция:
&НаСервере
Функция ВозвратТаблицыКурьеров()
ТаблицаКурьеров = Новый ТаблицаЗначений;
ТаблицаКурьеров = Объект.НазначениеКурьеров.Выгрузить();
Запрос = Новый Запрос;
//Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос.Текст ="ВЫБРАТЬ
              | Таблица.ФИО,
              | Таблица.НаселенныйПункт,
              | Таблица.Улица,
              | Таблица.Дом,
              | Таблица.Отметка,
              | Таблица.КодКурьера,
              | Таблица.КодДоставки
              |ПОМЕСТИТЬ Таблица
              |ИЗ
              | &Таблица КАК Таблица
              |;
              |
              |////////////////////////////////////////////////////////////////////////////////
              |ВЫБРАТЬ
              | Таблица.ФИО,
              | Таблица.НаселенныйПункт,
              | Таблица.Улица,
              | Таблица.Дом,
              | Таблица.Отметка,
              | Таблица.КодКурьера,
              | Таблица.КодДоставки
              |ИЗ
              | Таблица КАК Таблица
              |;
              |
              |////////////////////////////////////////////////////////////////////////////////
              |ВЫБРАТЬ
              | КурьерыЛицевыхСчетов.Курьер,
              | КурьерыЛицевыхСчетов.НаселенныйПункт,
              | КурьерыЛицевыхСчетов.Улица,
              | КурьерыЛицевыхСчетов.НомерДома
              |ПОМЕСТИТЬ КурьерыЛицыхСчетов
              |ИЗ
              | РегистрСведений.КурьерыЛицевыхСчетов КАК КурьерыЛицевыхСчетов
              |;
              |
              |////////////////////////////////////////////////////////////////////////////////
              |ВЫБРАТЬ
              | КурьерыЛицыхСчетов.Курьер,
              | КурьерыЛицыхСчетов.НаселенныйПункт,
              | КурьерыЛицыхСчетов.Улица,
              | КурьерыЛицыхСчетов.НомерДома,
              | Таблица.ФИО,
              | Таблица.НаселенныйПункт КАК НаселенныйПункт1,
              | Таблица.Улица КАК Улица1,
              | Таблица.Дом,
              | Таблица.Отметка,
              | Таблица.КодКурьера,
              | Таблица.КодДоставки
              |ИЗ
              | Таблица КАК Таблица
              | ВНУТРЕННЕЕ СОЕДИНЕНИЕ КурьерыЛицыхСчетов КАК КурьерыЛицыхСчетов
              | ПО Таблица.ФИО = КурьерыЛицыхСчетов.Курьер
              | И Таблица.НаселенныйПункт = КурьерыЛицыхСчетов.НаселенныйПункт
              | И Таблица.Улица = КурьерыЛицыхСчетов.Улица
              | И Таблица.Дом <> КурьерыЛицыхСчетов.НомерДома";
 
Запрос.УстановитьПараметр("Таблица", ТаблицаКурьеров);
ТабличнаяЧастьЗапроса = Запрос.Выполнить().Выгрузить();
Сообщить(ТабличнаяЧастьЗапроса);
Возврат ТабличнаяЧастьЗапроса
 КонецФункции


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
правильно сформулируйте условие соединения и будет вам счастье.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Greiv

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-09
  • Сайт: 
  • Профессия: Ученик 1С
правильно сформулируйте условие соединения и будет вам счастье.

В этом и проблема не селён в соединениях я ещё. Левое соединение выдаёт мне полную ТЗ без исключения.
Добавлено: 13 Мар 2015, 11:18

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

Последний раз редактировалось: Greiv; 13 Мар 2015, 11:18. Причина: Объединение сообщений

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
1. Вам же надо условие на НасПункт+Улица+Дом а у вас условие только на Дом
2. Зачем нужно соединение с регистром если вы с него ни одного поля не используете?
3. Тот же вопрос к врем. таблице "КурьерыЛицыхСчетов"
4. Оставьте первый вариант и поменяйте только место:
              |        ПО Таблица.ФИО = КурьерыЛицыхСчетов.Курьер
              |            И Таблица.НаселенныйПункт = КурьерыЛицыхСчетов.НаселенныйПункт
              |            И Таблица.Улица = КурьерыЛицыхСчетов.Улица
              |            И Таблица.Дом <> КурьерыЛицыхСчетов.НомерДома";
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.


Теги:
 

Перенос данных из 1с 82 БП (базовая) в 1с 82 БГУ (базовая)

Автор Владимир87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 8127
Последний ответ 06 Дек 2014, 17:40
от дфтын
Поиск по бае данных,(полнотекстовый поиск)

Автор kot_ooРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 4184
Последний ответ 19 Май 2014, 15:40
от kot_oo
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

Автор dollРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 2645
Последний ответ 26 Апр 2018, 06:45
от Геннадий ОбьГЭС
"Задваивание" данных в отчете

Автор mashencev_antonРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 13
Просмотров: 8550
Последний ответ 15 Окт 2015, 11:21
от Mari_beginner
Куда сохраняются данные в режиме работы клиент при выгрузке данных обработкой "Универсальный обмен данными в формате XML"

Автор xDDРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 7709
Последний ответ 13 Ноя 2014, 08:23
от cska-fanat-kz

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
alex0402
67 Сообщений
AIFrame AIFrame
56 Сообщений
oleg-x
56 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
41 Сообщений
ilyay ilyay
39 Сообщений
Анюта17
33 Сообщений
Alter
32 Сообщений
trialex3
30 Сообщений

* Кто онлайн

  • Точка Гостей: 303
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal