|
Перебор ТЗ | ☑ | ||
---|---|---|---|---|
0
demonkov
17.10.13
✎
23:00
|
Всем доброго времени суток.В 1с тока разбираюсь...Задача такая...Делаю загрузку из ТЗ...Идет перебор строк ТЗ и создается Контрагент...Как сделать так чтобы проверялась уникальность пары реквизитов при создании (фио+знач)
Пример ТЗ ФИО Знач Иванов 111 Петров 222 Сидоров 333 Иванов 444 Создаються 3 контрагента...(Иванов 111) а надо чтоб еще и (Иванов 444)... Если к.Пустая()и ком="" ТОгда Контр = Справочники.Контрагенты.СоздатьЭлемент(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); ИначеЕсли к=стртз.ФИО и к.Комментарий=стртз.занч ТОгда Контр = к.ПолучитьОбъект(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); Иначеесли к=стртз.фио и к.Комментарий<>стртз.занч ТОгда Контр = Справочники.Контрагенты.СоздатьЭлемент(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); КонецЕсли; Сообщить("Создан контрагент "+стртз.ФИО); КонецЦикла; Буду благодарен за помощь!!!!! |
|||
1
demonkov
17.10.13
✎
23:01
|
ТЗ=Данные.Выгрузить();
Для каждого стртз из ТЗ Цикл К= Справочники.Контрагенты.НайтиПоНаименованию(стртз.ФИО); Ком=к.Комментарий; Если к.Пустая()и ком="" ТОгда Контр = Справочники.Контрагенты.СоздатьЭлемент(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); ИначеЕсли к=стртз.ФИО и к.Комментарий=стртз.занч ТОгда Контр = к.ПолучитьОбъект(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); Иначеесли к=стртз.фио и к.Комментарий<>стртз.занч ТОгда Контр = Справочники.Контрагенты.СоздатьЭлемент(); Контр.Наименование=стртз.ФИО; Контр.Комментарий=стртз.знач; Контр.Записать(); КонецЕсли; Сообщить("Создан контрагент "+стртз.ФИО); КонецЦикла; |
|||
2
AllJoke
17.10.13
✎
23:04
|
Найтистроки быть может помогут
|
|||
3
AllJoke
17.10.13
✎
23:05
|
+запрос по из
|
|||
4
demonkov
18.10.13
✎
00:13
|
Сделал вот так
ТЗ=Данные.Выгрузить(); Для каждого стртз из ТЗ Цикл ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ФИО", стртз.ФИО); ПараметрыОтбора.Вставить("Знач", стртз.Знач); НайденныеСтроки = ТЗ.НайтиСтроки(ПараметрыОтбора); Если НайденныеСтроки.Количество()>0 Тогда Контр = Справочники.Контрагенты.СоздатьЭлемент(); Контр.Наименование=стртз.фИО; Контр.Комментарий=стртз.Знач; Контр.Записать(); Сообщить("Создан контрагент "+контр); Иначе Продолжить; КонецЕсли КонецЦикла; Все создает правильно.Как проверить на существование в справочнике элемента,сравнить с отбором? К= Справочники.Контрагенты.НайтиПоНаименованию(стртз.ФИО); Если к.Пустая() тогда.....так не работает..... Направьте в нужную сторону) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |