|
v7: Поиск по наименованию |
☑ |
0
ErrorEd88
26.02.12
✎
11:32
|
Из ТиС делалась типовая выгрузка в Бух 7.7. Справочник номенклатура одинаков по составу элементов в двух базах. Теперь в бух 7.7 пытаюсь загрузить данные из файлы эксель. Файл - сохраненный отчет по остаткам ТМЦ в ТиС. Пишу:
Если Спр.НайтиПоНаименованию(ExcelТипы.Cells(СтрТипы,1).Value) = 1 Тогда
...
Иначе
Спр = СоздатьОбъект("Справочник.Номенклатура");
...
КонецЕсли;
Почти всегда создаются новые элементы, хотя номенклатура есть. Как лучше искать подобные элементы?
|
|
1
ErrorEd88
26.02.12
✎
11:33
|
файлы=файла
|
|
2
МастерВопросов
26.02.12
✎
11:34
|
"Как лучше искать подобные элементы?"
по коду.
В отчет по остаткам ТМЦ наверное выводится не "Наименование", а "ПолнНаименование"
|
|
3
Мизантроп
26.02.12
✎
11:35
|
СокрЛП
|
|
4
Sj
26.02.12
✎
11:36
|
>> Иначе
>> Спр = СоздатьОбъект("Справочник.Номенклатура");
а это зачем? у тебя ж в Спр уже и так номенклатуры справочник.
|
|
5
ErrorEd88
26.02.12
✎
11:39
|
(4) Создаю новый элемент:
Спр2 = СоздатьОбъект("Справочник.Номенклатура");
Спр = СоздатьОбъект("Справочник.Номенклатура");
Спр.Новый();
Спр.ИспользоватьДату('01.11.2011');
Если Спр2.НайтиПоКоду("СК0000111")=1 Тогда
Спр.Родитель =Спр2.ТекущийЭлемент();
Конецесли;
|
|
6
ErrorEd88
26.02.12
✎
11:39
|
(3) Тоже не помогает.
|
|
7
ErrorEd88
26.02.12
✎
11:43
|
(2) Да, полное наименование. Буду пробовать НайтиПоРеквизиту()
|
|
8
miki
26.02.12
✎
12:01
|
(7)не взлетит для полного наименования.
|
|
9
Torquader
26.02.12
✎
12:17
|
А кода в бухгалтерии и в торговле у вас одинаковые ?
Если нет, то придётся делать танцы с бубном, чтобы синхронизовать справочник.
|
|
10
smaharbA
26.02.12
✎
12:18
|
запросом с вычетом всех пробелов и пунктуации
|
|
11
МастерВопросов
26.02.12
✎
12:41
|
(7) проще отчет по остаткам ТМЦ подправить, только сохраните его во внешний файл, а не внутри конфы правьте
|
|
12
ErrorEd88
26.02.12
✎
12:49
|
(8) У реквизита ПолнНаименование убрал неограниченную длину. Поставил галку сортировка. Взлетело.
|
|
13
МастерВопросов
26.02.12
✎
12:52
|
+(11) дарю:
//*******************************************
Процедура Сформировать()
//Выгружаем остатки в ТЗ
ТЗ=СоздатьОбъект("ТаблицаЗначений");
Рег=СоздатьОбъект("Регистр.ОстаткиТМЦ");
Рег.ВыгрузитьИтоги(ТЗ);
Тз.Свернуть("Номенклатура","Количество");
//Выводим таблицу
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица1");
Таб.ВывестиСекцию("Шапка");
Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);
Пока Тз.ПолучитьСтроку()=1 Цикл
КодНоменклатуры=Тз.Номенклатура.Код;
ОстатокВсего=Тз.Количество;
Таб.ВывестиСекцию("Строка_1");
КонецЦикла;
Таб.ТолькоПросмотр(1);
Таб.Показать("Таблица1","");
КонецПроцедуры
|
|
14
ErrorEd88
26.02.12
✎
13:01
|
(13) спасибо
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший