Имя: Пароль:
1C
1С v8
v8: табельный номер
0 pkt88
 
16.09.11
08:51
Версия 1с 8,2 Комплексная автоматизация
загрузка из dbf в физические лица сделал!А возможно ли загнать табельный номер в базу физических лиц???Много сотрудников просто!

КОД:
Процедура ЗаписатьФИО(Ссылка,Фамилия,Имя,Отчество) Экспорт        
   ФИОСрез = РегистрыСведений.ФИОФизЛиц.ПолучитьПоследнее(,Новый Структура("ФизЛицо",Ссылка));
   СтрокаСреза = ФИОСрез.Фамилия + ФИОСрез.Имя + ФИОСрез.Отчество;
   Если СтрокаСреза <> (Фамилия + Имя + Отчество) Тогда
       МенеджерЗаписи = РегистрыСведений.ФИОФизЛиц.СоздатьМенеджерЗаписи();
       МенеджерЗаписи.ФизЛицо = Ссылка;
       Если ПустаяСтрока(СтрокаСреза) Тогда
           МенеджерЗаписи.Период = '19000101';
       Иначе
           МенеджерЗаписи.Период = РабочаяДата;
       КонецЕсли;
       МенеджерЗаписи.Фамилия = Фамилия;
       МенеджерЗаписи.Имя = Имя;
       МенеджерЗаписи.Отчество = Отчество;
       МенеджерЗаписи.Записать(Истина);
   КонецЕсли;
КонецПроцедуры

Процедура КнопкаВыполнитьНажатие(Кнопка)
Для Каждого Стр из ФизическиеЛица цикл
       Спр = ФизическиеЛица.Получить(ФизическиеЛица.Индекс(Стр));
       Сообщить(Спр.Наименование);
       Сообщить(Спр.ИНН);
       ТСпр = Справочники.ФизическиеЛица;
       ТекЭлем = ТСпр.СоздатьЭлемент();
       ТекЭлем.Наименование  = Спр.Наименование;
       ТекЭлем.ИНН = Спр.ИНН;
       ТекЭлем.ДатаРождения = Спр.ДатаРождения;
       ТекЭлем.СтраховойНомерПФР = Спр.СтраховойНомерПФР;
       ТекЭлем.Пол = Спр.Пол ;
       ТекЭлем.Записать();
       Сообщить("Элемент записан");
       ФИО = Спр.Наименование;
       Фамилия  = ОбщегоНазначения.ВыделитьСлово(ФИО);
       Имя      = ОбщегоНазначения.ВыделитьСлово(ФИО);
       Отчество = ОбщегоНазначения.ВыделитьСлово(ФИО);
       ЗаписатьФИО(ТекЭлем.Ссылка,Фамилия,Имя,Отчество);
   КонецЦикла;
КонецПроцедуры

 Процедура ИмяФайлаНачалоВыбора(Элемент, СтандартнаяОбработка)
   // Вставить содержимое обработчика.
   Режим = РежимДиалогаВыбораФайла.Открытие;
   ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
   ДиалогОткрытияФайла.ПолноеИмяФайла = "";
   Фильтр = "Таблицы баз данных *.dbf (*.dbf)|*.dbf";
   ДиалогОткрытияФайла.Фильтр = Фильтр;
   ДиалогОткрытияФайла.МножественныйВыбор = Ложь;
   ДиалогОткрытияФайла.Заголовок = "Выберите таблицу базы данных *.dbf";
   Если ДиалогОткрытияФайла.Выбрать() Тогда
       ИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
   КонецЕсли;
КонецПроцедуры

Процедура ОсновныеДействияФормыЗаполнить(Кнопка)
   Если ПустаяСтрока(ИмяФайла) = Ложь тогда
       Путь =  ИмяФайла;
       База= Новый XBase;
       База.Кодировка = КодировкаXBase.ANSI;       //Открываем файл для чтения
       База.ОткрытьФайл(ИмяФайла,,Истина);
       Если База.Открыта() = Истина тогда        // проверяем открыта ли база
             Сообщить("База отрыта!");              // выводим сообщение в слечае если база открыта
       КонецЕсли;
       База.Первая();                            // позиционируем на первой записи открытой базы
        //Цикл по записям DBF файла
        Пока НЕ База.ВКонце() Цикл  
           Стр = ФизическиеЛица.Добавить();
           Стр.Группа = Ложь;
           Стр.Код = База.tabn;        
           Стр.Наименование = СокрЛП(База.fio);
           Стр.ДатаРождения = База.datrojden ;
           Стр.ИНН = СокрЛП(База.inn);
           Стр.СтраховойНомерПФР = СокрЛП(База.pens_strah);
           Если СокрЛП(База.Pol)="Мужской" Тогда  
               Стр.Пол = Перечисления.ПолФизическихЛиц.Мужской ;
           ИначеЕсли СокрЛП(База.Pol)="Женский" Тогда
               Стр.Пол = Перечисления.ПолФизическихЛиц.Женский ;
           КонецЕсли ;
           База.Следующая();                     // переходим к следуей записи
         КонецЦикла;
       База.ЗакрытьФайл();                          // закрываем файл базы данных
       Сообщить("База закрыта!");
   иначе
       ОчиститьСообщения();
       Сообщить("Не выбран файл источник");
       Возврат;
   КонецЕсли;
КонецПроцедуры
1 SuperMario
 
16.09.11
09:29
Возможно.
2 pkt88
 
16.09.11
09:33
а как?Не подскажешь куда писать
3 dchumak
 
16.09.11
10:19
Так это и делается строкой:
Стр.Код = База.tabn;
Из файла dbf код пишется в справочник физических лиц, реквизит код.
4 pkt88
 
16.09.11
10:53
не пишет он
5 pkt88
 
16.09.11
11:56
он пишет все по порядку а у меня есть там физические уже