|
v8: Загрузка из DBF: проблемы | ☑ | ||
---|---|---|---|---|
0
pkt88
02.09.11
✎
10:35
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
// Вставить содержимое обработчика. Для Каждого Стр из ФизическиеЛица цикл Спр = ФизическиеЛица.Получить(ФизическиеЛица.Индекс(Стр)); Сообщить(Спр.Наименование); Сообщить(Спр.ИНН); ТСпр = Справочники.ФизическиеЛица; ТекЭлем = ТСпр.СоздатьЭлемент(); ТекЭлем.Наименование = Спр.Наименование; ТекЭлем.ИНН = Спр.ИНН; ТекЭлем.Записать(); Сообщить("Элемент записан"); КонецЦикла; КонецПроцедуры Процедура ИмяФайлаНачалоВыбора(Элемент, СтандартнаяОбработка) // Вставить содержимое обработчика. Режим = РежимДиалогаВыбораФайла.Открытие; ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим); ДиалогОткрытияФайла.ПолноеИмяФайла = ""; Фильтр = "Таблицы баз данных *.dbf (*.dbf)|*.dbf"; ДиалогОткрытияФайла.Фильтр = Фильтр; ДиалогОткрытияФайла.МножественныйВыбор = Ложь; ДиалогОткрытияФайла.Заголовок = "Выберите таблицу базы данных *.dbf"; Если ДиалогОткрытияФайла.Выбрать() Тогда ИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла; КонецЕсли; КонецПроцедуры Процедура ОсновныеДействияФормыЗаполнить(Кнопка) Если ПустаяСтрока(ИмяФайла) = Ложь тогда Путь = ИмяФайла; База= Новый XBase; База.Кодировка = КодировкаXBase.ANSI; //Открываем файл для чтения База.ОткрытьФайл(ИмяФайла,,Истина); Если База.Открыта() = Истина тогда // проверяем открыта ли база Сообщить("База отрыта!"); // выводим сообщение в слечае если база открыта КонецЕсли; База.Первая(); // позиционируем на первой записи открытой базы //Цикл по записям DBF файла Пока НЕ База.ВКонце() Цикл Стр = ФизическиеЛица.Добавить(); Стр.Группа = Ложь; Стр.Код = База.tabn; Стр.Наименование = СокрЛП(База.fio); Стр.ДатаРождения = База.datrojden ; Стр.ИНН = СокрЛП(База.inn); Стр.СтраховойНомерПФР = СокрЛП(База.pens_strah); Если СокрЛП(База.Pol)="Мужской" Тогда Стр.Пол = Перечисления.ПолФизическихЛиц.Мужской ; ИначеЕсли СокрЛП(База.Pol)="Женский" Тогда Стр.Пол = Перечисления.ПолФизическихЛиц.Женский ; // Иначе КонецЕсли ; Стр.МестоРождения = СокрЛП(База.me_rozd); База.Следующая(); // переходим к следуей записи КонецЦикла; База.ЗакрытьФайл(); // закрываем файл базы данных Сообщить("База закрыта!"); иначе ОчиститьСообщения(); Сообщить("Не выбран файл источник"); Возврат; КонецЕсли; КонецПроцедуры Это перенос с DBF в 1с баз Физических лиц. Все должно работать но пол,дата рождения и пенсномер не идут в 1с почему то и ошибок нет вроде!!! |
|||
1
Grusswelle
02.09.11
✎
10:36
|
Нет ошибок в синтаксических - ищи логическую.
|
|||
2
Дикообразко
02.09.11
✎
10:37
|
а Стр.Записать()
где? |
|||
3
GenV
02.09.11
✎
10:37
|
(0) Ну ты же в базу их не записываешь )
|
|||
4
GenV
02.09.11
✎
10:38
|
3+ в КнопкаВыполнитьНажатие
|
|||
5
forforumandspam
02.09.11
✎
10:41
|
Что это? О_о
ФизическиеЛица.Получить(ФизическиеЛица.Индекс(Стр)); |
|||
6
forforumandspam
02.09.11
✎
10:42
|
В данном коде у тебя нет Пола, ДатыРождения и пенсномер:
ТекЭлем = ТСпр.СоздатьЭлемент(); ТекЭлем.Наименование = Спр.Наименование; ТекЭлем.ИНН = Спр.ИНН; ТекЭлем.Записать(); |
|||
7
pkt88
02.09.11
✎
10:43
|
а как должно то быть,это в форме же
|
|||
8
forforumandspam
02.09.11
✎
10:44
|
(7)
Для Каждого Стр из ФизическиеЛица цикл Спр = ФизическиеЛица.Получить(ФизическиеЛица.Индекс(Стр)); Чем будет отличаться "Стр" от "Спр" в данной строчке? |
|||
9
pkt88
02.09.11
✎
10:57
|
не знаю если честно
|
|||
10
forforumandspam
02.09.11
✎
10:58
|
(9) Ничем.
Для Каждого Стр из ФизическиеЛица цикл Спр = ФизическиеЛица.Получить(ФизическиеЛица.Индекс(Стр)); Сообщить(Спр.Наименование); И Для Каждого Стр из ФизическиеЛица цикл Сообщить(Стр.Наименование); Одинаково |
|||
11
forforumandspam
02.09.11
✎
10:59
|
И где ответ на (6) ?
|
|||
12
pkt88
02.09.11
✎
11:01
|
спасибо тупил я
|
|||
13
pkt88
02.09.11
✎
11:03
|
Осталось одна проблема ФИО не раскидывается по строкам!
А все отично!!!А вопрос можно еще??? Я переношу сотрудников с dbf в базу с мне сказали проще делать через Физ лиц это,но это как то гиморойно а можно сделать сразу в 1с сотрудники??? |
|||
14
Дикообразко
02.09.11
✎
11:06
|
(13)
1. см РС ФизФизЛиц 2. не потянешь сотрудники... тогда тебе нужно изучить БП ПриемНаРаботуСотрудника |
|||
15
pkt88
02.09.11
✎
11:08
|
а ФИО почему кидает но по полям отдельно не кидает тока после того как поставлю продел в поле тока тогда кидает
|
|||
16
СаПеР
02.09.11
✎
11:20
|
потому что регистр сведений надо заполнять
|
|||
17
СаПеР
02.09.11
✎
11:21
|
ФИОФизЛиц называется
|
|||
18
pkt88
02.09.11
✎
11:30
|
Этого нет в справочнике
|
|||
19
pkt88
02.09.11
✎
11:31
|
понял прости
|
|||
20
pkt88
02.09.11
✎
11:40
|
это же не таблица а ресурс какойто а можно его в код мой добавить?
|
|||
21
forforumandspam
02.09.11
✎
11:44
|
(20) Всё можно, но перед этим лучше книжку почитай.
|
|||
22
pkt88
02.09.11
✎
11:49
|
а есть разница,если я забью тудой все возможные имена и фамилии или тока мои должны быть?
|
|||
23
GenV
02.09.11
✎
11:59
|
(22) Есть. Да.
|
|||
24
pkt88
02.09.11
✎
13:21
|
к в мой код это можно встроить? или отдельно писать надо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |