Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Получить Реквизит (число прочтений - 2583 )
MixanM
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 16
Зарегистрирован: 10. Августа 2011
Получить Реквизит
02. Декабря 2011 :: 09:16
Печать  
Добрый день, у меня такая штука случилась:
- выгружаю из справочника данные в в *.тхт файл ( номенклутар, артикул, НДС, и реквезит ОКЕИ)
- Загружаю 'nn текстовый файл в другую базу 1с, у меня все реквизиты встают нормально, кроме реквезита ОКЕИ,  при выгрузки из справочника источника, этот реквезит забит в  "текстовое поле" - Тип : "Справочник.ОКЕИ". Т.е пв файл выгружаются эти данные, а при загрузке в новую базу, он просто их , как будто не берет. Кто нибудь сталкивался с таким?
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Получить Реквизит
Ответ #1 - 02. Декабря 2011 :: 10:02
Печать  
Как происходит индетификация объектов?
  
Наверх
 
IP записан
 
MixanM
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 16
Зарегистрирован: 10. Августа 2011
Re: Получить Реквизит
Ответ #2 - 05. Декабря 2011 :: 00:57
Печать  
Satans Claws писал(а) 02. Декабря 2011 :: 10:02:
Как происходит индетификация объектов?

Код
Выбрать все
Текст = СоздатьОбъект("Текст");
		Попытка
			Текст.Открыть(ИмяФайла);
			Сообщить("Загружаю из файла : "+ИмяФайла);
		Исключение
			Сообщить("Файл не найден");
			Возврат;
		КонецПопытки;
		Название = Текст.ПолучитьСтроку(1);
		Номер = Текст.ПолучитьСтроку(2);
		ШК= Текст.ПолучитьСтроку(5);
		ОКЕИ = Текст.ПолучитьСтроку(6);
		НДС = Текст.ПолучитьСтроку(7); 


Вот как т так происходит идентификация во входном файле.
А так происмходит запись в справочник :
Код
Выбрать все
Спр = СоздатьОбъект("Справочник.Номенклатура");
	Спр.Новый();
	Спр.ПолнНаименование = СокрЛП(Название);
	Спр.Код = СокрЛП(Номер);
	Спр.Наименование = СокрЛП(Название);
	Спр.СтавкаНДС = СокрЛП(НДС);
	Спр.РеквБазоваяЕдиница = СокрЛП(ОКЕИ);
	Спр.РеквШтрихкодБазовой = СокрЛП(ШК);
	Спр.Записать(); 

  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Получить Реквизит
Ответ #3 - 05. Декабря 2011 :: 04:32
Печать  
Охренитительно... других слов нет
  
Наверх
ICQ  
IP записан
 
MixanM
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 16
Зарегистрирован: 10. Августа 2011
Re: Получить Реквизит
Ответ #4 - 05. Декабря 2011 :: 04:36
Печать  
Salimbek писал(а) 05. Декабря 2011 :: 04:32:
Охренитительно... других слов нет

не вижу ничего хренительного
  
Наверх
 
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: Получить Реквизит
Ответ #5 - 05. Декабря 2011 :: 04:37
Печать  
Ты уж определись, что тебе надо сохранять и загружать - строку или элемент справочника ...
  
Наверх
 
IP записан
 
MixanM
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 16
Зарегистрирован: 10. Августа 2011
Re: Получить Реквизит
Ответ #6 - 05. Декабря 2011 :: 04:42
Печать  
Dmitry The Wing писал(а) 05. Декабря 2011 :: 04:37:
Ты уж определись, что тебе надо сохранять и загружать - строку или элемент справочника ...

Загрузить нужно элемент справочника, но произвести его индетифекацию по строке, я так понял в цикле выбираю вс элементы справочника.ОКЕИ, и ищу по условию где элемент справочника будет равен переменной ОКЕИ, верно ?
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Получить Реквизит
Ответ #7 - 05. Декабря 2011 :: 04:49
Печать  
Код
Выбрать все
спрОКЕИ = СоздатьОбъект("Справочник.ОКЕИ");
...
спрОКЕИ.НайтиПоНаименованию(СокрЛП(ОКЕИ), 0, 1);
Спр.РеквШтрихкодБазовой = спрОКЕИ.ТекущийЭлемент(); 



Это если вкраце.
Но с такими вопросами вам лучше на Мисту - там оперативнее ответят.
  
Наверх
 
IP записан
 
MixanM
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 16
Зарегистрирован: 10. Августа 2011
Re: Получить Реквизит
Ответ #8 - 05. Декабря 2011 :: 04:51
Печать  
Satans Claws писал(а) 05. Декабря 2011 :: 04:49:
Код
Выбрать все
спрОКЕИ = СоздатьОбъект("Справочник.ОКЕИ");
...
спрОКЕИ.НайтиПоНаименованию(СокрЛП(ОКЕИ), 0, 1);
Спр.РеквШтрихкодБазовой = спрОКЕИ.ТекущийЭлемент(); 



Это если вкраце.
Но с такими вопросами вам лучше на Мисту - там оперативнее ответят.

Спасиб, я вроде примерно понял
  
Наверх
 
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: Получить Реквизит
Ответ #9 - 05. Декабря 2011 :: 05:25
Печать  
Но лучше все же выгружать код, если, конечно, он уникален.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать