|
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
|
он пишет все по порядку а у меня есть там физические уже
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |