Имя: Пароль:
1C
1С v8
Конвертация из Access 97
,
0 Mikhail Volkov
 
10.03.15
06:00
Есть полуживая база розничной торговли на Access 97, и желание перевести ее в 1С. Первое, что приходит в голову, все таблицы Access 97 выгрузить в Excel, а из Excel - загрузить в 1С. Или есть более простой способ перехода?
1 Kavar
 
10.03.15
06:01
А почему именно в эксель? с тем же ДБФ гораздо удобнее работать.
2 Mikhail Volkov
 
10.03.15
06:04
(1) Excel или DBF не суть. Есть более простой способ перехода?
3 mehfk
 
10.03.15
06:05
Воспользуйся обработкой AccessTo1C.epf
4 VladZ
 
10.03.15
06:10
(0)  Что мешает читать напрямую из Access ?
5 Mikhail Volkov
 
10.03.15
06:10
(3) Ссылку на нее можно? Или в чем ее суть?
6 Mikhail Volkov
 
10.03.15
06:11
(4) Как Com, OLE?
7 tixis
 
10.03.15
06:30
(5) это стеб
8 фобка
 
10.03.15
06:45
(2) определяйся с составом и характером данных в аксессе, определяйся с наиболее подходящей конфигурацией под нужды фирмы, никуда ничего не выгружай (см (4)), пиши обработки для загрузки данных. Ты же это от себя пытался скрыть?
9 фобка
 
10.03.15
06:45
(6) ado db
10 Mikhail Volkov
 
10.03.15
06:50
(9) Это чо, можно подробнее?
11 mehfk
 
10.03.15
06:58
Еще можно воспользоваться механизмом внешних источников данных
12 ИС-2
 
naïve
10.03.15
06:59
(0) через внешний источник данных

Это будет сложнее чем через эксель, однако интереснее для развития.

Проще экселя только табличный документ.
13 Lama12
 
10.03.15
07:00
(9) +1
14 Mikhail Volkov
 
10.03.15
07:07
Еще такой нюанс – база Access 97 с паролем (известен),  у меня нет Access 97, только 2010, который просит его снять перед конвертацией (сам не может, система шифрования другая). А без конвертации в Access 2010 вижу только таблицы базы.
(8) Там задачка из 2-х действий: приход, расход, остатки.
15 ДенисЧ
 
10.03.15
07:30
(14) найти акцесс 97 в сети - проблема маленькая. Тем более он тебе нужен на один раз - так что даже закон практически не нарушишь
16 Lama12
 
10.03.15
07:38
(14) Зачем тебе аксес? Драйвер ado db или odbc этой бд встроен в операционку. Если и нет, что маловероятно, то распространяется он бесплатно и еще входит в дистрибутив екселя.
17 dmpl
 
10.03.15
07:46
(2) Ага. Ничего не переносить - начать с 0.
18 spectre1978
 
10.03.15
08:27
Если я правильно помню, 97 это файл mdb движка Jet 3.5. ADO DB провайдер для движка Jet 4.0 и сам движок входят во все ОС начиная с Windows 98, за исключением Vista (надо ставить) и 2012 Server. Т.е. в большинстве случаев просто подключаешься через ADO прямо из 1С и с помощью языка JetSQL читаешь чего хочешь. Язык это довольно хороший, с кучей встроенных функций и всеми возможностями SQL, так что можно даже немного и поизгаляться с данными перед конвертацией.
19 dk
 
10.03.15
08:36
не принципиально напрямую из акцесса читать или через промежуточный excel, т.к. действие одноразовое
--
главное определиться что и как там хранится
--
при загрузке через excel можно на некоторые нюансы нарваться типа "съедания" пробелов в идентификаторах, обрезания длинных строк и различные преобразования строка число и обратно
20 spectre1978
 
10.03.15
08:42
(19) дык а смысл в двойной работе? Расковыривать эксель все равно придется тем же ADO Jet либо через OLE, так не разумнее ли сразу mdb?
21 vde69
 
10.03.15
09:03
22 Mikhail Volkov
 
10.03.15
09:26
(21) Это для клюшки?
23 vde69
 
10.03.15
09:35
(22) замени СоздатьОбъект на Новый и все :)

может еще где будет ошибка, адаптации на 3 минуты
24 shuhard
 
10.03.15
09:51
(21) [Состояние("Идет чтение таблицы <" + ИмяТаблици + "> - " + Обмен_Индикатор(Счетчик, МаксСчетчик));]
ржал
от души
25 vde69
 
10.03.15
10:03
(24) ну в 7.7 не было индикаторов штатных, у меня был написан свой простенький...

в чем проблемма?
26 shuhard
 
10.03.15
19:04
(25) проблема в индикаторе в цикле, тормозящем процесс на порядок
27 Новый участник
 
10.03.15
19:14
(25) Мы служим людям, а не компу. Сам тоже сделал медленнее, но показал пользователю двигающийся прогресс-бар. Теперь пользователь доволен - он видит, что работа не стоит на месте.
Т не на порядок, максимум вдвое.
28 shuhard
 
10.03.15
19:31
(27) [максимум вдвое.]
за такое генеталии откручивают, иногда по самые уши
29 spectre1978
 
10.03.15
19:45
(28) Код дан как есть. Не нравится - убери индикатор да и всех делов. Совсем не нравится - найди другой код или напиши свой. Что все так возбудились-то?
30 vde69
 
10.03.15
20:43
все операции по загрузке и т.д. медленные, иногда занимают по несколько часов, и вот за часовую обработку без и индикатора я-бы оторвал руки куда скорее чем за замедление минутной обработки...
31 ДенисЧ
 
10.03.15
20:46
"все операции по загрузке и т.д. медленные"

Это сколько же миилиардов записей за раз ты грузишь?
32 vde69
 
10.03.15
20:48
Гиговая база аксеса часов 8 грузится....
33 ДенисЧ
 
10.03.15
20:55
(32) Учу читать вопрос...
У меня 30 000 записей из dbf в sql грузились за 3 секунды... С преобразованием для BULK и прочими проверками
34 vde69
 
10.03.15
21:17
(33)ситуации бывают разные, кроме того дбф быстрее аксесса

кроме того 30 лямов будет грузится сильно дольше чем 1000 по 39к
35 shuhard
 
10.03.15
21:19
(29) а чё так нервно и истерично ?
36 spectre1978
 
10.03.15
21:52
(35) вообще никаких нервов. Код в целом приличный приведен. Зачем уж его такой обструкции подвергать из-за индикатора, который тупо комментируется строчка и все, вообще без потерь для работы?
37 spectre1978
 
10.03.15
22:03
(34) а перегонка mdb-dbf? Кроме того, есть еще нюанс - в mdb можно сделать запрос (при желании довольно сложный) между несколькими таблицами и выгрузить в 1С полученный результат. dbf в общем случае атомарны, чтобы сделать запрос из нескольких, все равно нужен БД-движок типа того же Jet или BDE. И вряд ли это выйдет быстрее чем нативный mdb.