Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Які дані треба призначити реквізиту із типом значень Справочники          
vizit73 Подменю пользователя
сообщение 21.08.12, 20:58
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 11
Спасибо сказали: 0 раз
Рейтинг: 0

1С Предприятие 7.7 (сетевая версия) (7.70.025)
Підготував в Excel довідник Імена, складається з двох стовпчиків. В першому імена у другому приналежність до статі відповідно Ж або Ч.
У конфігурації створив Довідник Имена, у Наименовании зберігаються Імена + Реквізит Пол, який обирається із довідника Пол.
Довідник Пол у Наименовании зберігаються скорочені назви Ж або Ч відповідний код 1 або 2.

Імпортую за допомогою наступного коду:
Процедура ВыборФайла()
ИмяВыбрФайла="";
ИмяПутиКФайлу="";
    Если ФС.ВыбратьФайл(0,ИмяВыбрФайла,ИмяПутиКФайлу,"","(*.xls)|*.xls","XLS")=0 Тогда
        Форма.Закрыть();
        Возврат;
    КонецЕсли;
    ФайлИмпорта=ИмяПутиКФайлу+ИмяВыбрФайла;
КонецПроцедуры

Процедура Выполнить()
Попытка
Эксель = СоздатьОбъект("Excel.Application");
Исключение
Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!");
Возврат;
КонецПопытки;
Книга = Эксель.WorkBooks.Open(ФайлИмпорта);
Лист = Книга.WorkSheets(НомерЛиста);
СтрокиОт=СтрокаОт;
СтрокиДо=СтрокаДо;
СпрИмена=СоздатьОбъект("Справочник."+ИмяСправ);
СпрПол=СоздатьОбъект("Справочник.Пол");

Для стр=СтрокиОт По СтрокиДо Цикл
    Имя=СокрЛП(Эксель.Cells(стр,1).Value);
    ПолИмени=СокрЛП(Эксель.Cells(стр,2).Value);
    Если СпрПол.НайтиПоНаименованию(ПолИмени, 0, 1)=1 Тогда
        СокрПол=СпрПол.Наименование; //КодПол=СпрПол.Код;
    КонецЕсли;
    Состояние(""+СтрокиОт+"/"+СтрокиДо+"  "+Имя);
    Если СпрИмена.НайтиПоНаименованию(Имя, 0, 1)=0 Тогда
    //если элемент с таким наименованием не найден, то создаем его
        СпрИмена.Новый();
        СпрИмена.Наименование=Имя;
    СпрИмена.Пол=СокрПол; //СпрИмена.Пол=КодПол;
        СпрИмена.Записать();
    КонецЕсли;    
КонецЦикла;
КонецПроцедуры


Імена експортуються, поле Стать не заповнюється чи так чи інакше. Що треба присвоювати Код чи Нименование?
СокрПол=СпрПол.Наименование; //КодПол=СпрПол.Код;
.......
СпрИмена.Пол=СокрПол; //СпрИмена.Пол=КодПол;


logist Подменю пользователя
сообщение 21.08.12, 21:01
Сообщение #2

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2539 раз
Рейтинг: 0

Цитата(vizit73 @ 21.08.12, 21:58) *
Що треба присвоювати Код чи Нименование?

Ни то ни то, нужно - Ссылка


Signature
Личные бесплатные консультации не даю, для этого есть форум!

vizit73 Подменю пользователя
сообщение 21.08.12, 21:16
Сообщение #3

Общительный
**
Группа: Пользователи
Сообщений: 11
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(logist @ 21.08.12, 22:01) *
Ни то ни то, нужно - Ссылка


Архітектура зрозуміла, як витягти цю Ссылку та присвоювати СпрИмена.Пол ?

logist Подменю пользователя
сообщение 21.08.12, 21:32
Сообщение #4

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2539 раз
Рейтинг: 0

Вероятно
СокрПол=СпрПол.Ссылка;


Signature
Личные бесплатные консультации не даю, для этого есть форум!

vizit73 Подменю пользователя
сообщение 21.08.12, 21:58
Сообщение #5

Общительный
**
Группа: Пользователи
Сообщений: 11
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(logist @ 21.08.12, 22:32) *
Вероятно
СокрПол=СпрПол.Ссылка;


Ні, видає помилку:
СсылкПол=СпрПол.Ссылка;//СокрПол=СпрПол.Наименование; КодПол=СпрПол.Код;
{Обработка.ИмпортСправочников.Форма.Модуль(30)}: Поле агрегатного объекта не обнаружено (Ссылка)
тобто я так розумію, компілятор/інтерпритатор 1С вважає Ссылка полем об'єкту довідника, якого там зрозуміло немає.
Може є якийсь метод? Переглянув знову розділ Работа со Справочниками том. 1 нічого на думку не приходить.

Vofka Подменю пользователя
сообщение 21.08.12, 22:01
Сообщение #6

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8

Цитата(logist @ 21.08.12, 22:32) *
СокрПол=СпрПол.Ссылка;

В 7.7, по-моему, поля Ссылка нету.

Если СпрПол имеет тип нужного справочника, то надо по-моему либо так:
СокрПол=СпрПол;

либо так
СокрПол=СпрПол.ТекущийЭлемент;


Сообщение отредактировал Vofka - 21.08.12, 22:03

vizit73 Подменю пользователя
сообщение 21.08.12, 22:14
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 11
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Vofka @ 21.08.12, 23:01) *
В 7.7, по-моему, поля Ссылка нету.


Дякую
СокрПол=СпрПол.ТекущийЭлемент;
підійшов, імпорт відбувся.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 15.06.25, 17:04
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!