Получение данных из Access

20.11.08

Интеграция - Внешние источники данных

Собствено опять даю пример затягивания таблицы из внешних данных, теперь немного другой :)
//
// Функция получает таблицу из базы аксесса
//
Функция ПолучитьТаблицуАкцесса (Подключение, ИмяТаблици)
	Результат = СоздатьОбъект("ТаблицаЗначений");
	Результат.Очистить();

	Команда = СоздатьОбъект("ADODB.Command");
	Команда.ActiveConnection=Подключение;
	ТекстСелект = "SELECT * FROM " +  ИмяТаблици;
	НаборЗаписей = СоздатьОбъект("ADODB.RecordSet");
	Команда.CommandText=ТекстСелект;
	Попытка
		НаборЗаписей=Команда.Execute();
	Исключение
		Сообщить(ОписаниеОшибки());
		Возврат -1;
	КонецПопытки;
	
	// надо создать колонки
	Для е = 0 по (НаборЗаписей.Fields.Count - 1) Цикл 
		Результат.НоваяКолонка(СокрЛП(НаборЗаписей.Fields(е).Name));
	КонецЦикла;
	
	Попытка
		НаборЗаписей.MoveFirst();
	Исключение //нет записей в рекордсете
		НаборЗаписей.Close();
		Возврат Результат;
	КонецПопытки;
	
	НаборЗаписей.MoveFirst();
	Пока НаборЗаписей.EOF() = 0 Цикл
		// тут имеем строку записи
		//ОбработкаПрерыванияПользователя();  
		Состояние("Идет чтение таблицы <" + ИмяТаблици + "> - " + Обмен_Индикатор(Счетчик, МаксСчетчик));

		Результат.НоваяСтрока();
		Стр = "";
		Для е = 0 по (НаборЗаписей.Fields.Count - 1) Цикл 
			Результат.УстановитьЗначение(Результат.КоличествоСтрок(), СокрЛП(НаборЗаписей.Fields(е).Name), НаборЗаписей.Fields(е).Value);
			Если ВыводитьДанныеВСтрокуСообщений=1 Тогда
				Стр = Стр + "; " + НаборЗаписей.Fields(е).Name + "=" + НаборЗаписей.Fields(е).Value;
			КонецЕсли;
		КонецЦикла;
		
		Если ВыводитьДанныеВСтрокуСообщений=1 Тогда
			Сообщить (Стр);
		КонецЕсли;
				
		НаборЗаписей.MoveNext();
	КонецЦикла;
			 
	НаборЗаписей.Close();
	
	Возврат Результат;
КонецФункции

// *******************************
// пример вызова
//


//
// подключаемся
//
СтрокаПод="Driver={Microsoft Access Driver (*.mdb)};Dbq=" + ИмяФайла + ";";
Акцесс = СоздатьОбъект("ADODB.CONNECTION");
Попытка
	Акцесс.Open(СтрокаПод);
Исключение
	Сообщить(ОписаниеОшибки());
	Возврат;
КонецПопытки;

//
// получем таблицу с именем "Номенклатура"
//
ТабСпр = ПолучитьТаблицуАкцесса (Акцесс, """Номенклатура""");



См. также

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22447    19    1    

22

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9208    9    8    

10

Перенос данных из Парус 7.хх в ЗГУ ред.3

Внешние источники данных Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 7.хх учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

24000 руб.

24.04.2017    48700    97    163    

86

Перенос начальных остатков из Парус 7.71 в БГУ

Внешние источники данных Взаиморасчеты Учет ОС и НМА Логистика, склад и ТМЦ Бюджетный учет Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 2.0 1С:Бухгалтерия государственного учреждения Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Перенос словарей и начальных остатков из ПП Парус-Бухгалтерия Бюджет 7.71 в 1Сv8 БГУ2. Заполнение словарей и документов по вводу начальных остатков. Не требуется установка ПП Парус7. Возможна дозагрузка. Позволит автоматически и наиболее полно ввести данные в программу для начала работы. 

15600 руб.

08.12.2011    81562    128    123    

147

Перенос данных из Парус 10 (Торнадо) в ЗГУ ред.3 через Excel

Внешние источники данных Загрузка и выгрузка в Excel Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате из Парус 10(Торнадо) учреждений через файлы Excel в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ). В принципе, обработка может быть использована для загрузки из файлов Excel, полученных из любых информационных систем.

24000 руб.

16.11.2018    30000    20    31    

21

Загрузка спецификаций в УНФ из системы Базис-мебельщик

Производство готовой продукции (работ, услуг) Внешние источники данных Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 Лесное и деревообрабатывающее хозяйство Россия Управленческий учет Платные (руб)

Обработка предназначена для загрузки файлов, выгруженных из системы Базис-мебельщик, в справочник "Спецификации" для последующих процессов учета и диспетчирования полуфабрикатов и изделий.

7200 руб.

24.06.2021    19126    52    50    

29
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. europro 21.11.08 23:00 Сейчас в теме
еще бы комментарий к каждому функциональному блоку
2. vde69 925 21.11.08 23:26 Сейчас в теме
чуток закоментил, но вроде и так все прозрачно
3. GSoft 2235 21.11.08 23:40 Сейчас в теме
сделай комментарий более подробным
исходи из того что ее смотрят первоклассники)))
4. RailMen 823 14.12.08 00:48 Сейчас в теме
люблю когда код в студии
5. greenzmo1 07.08.09 12:07 Сейчас в теме
А есть нечто похожее для 8-ки?
6. vde69 925 07.08.09 13:01 Сейчас в теме
(5) заменить "СоздатьОбъект" и учеть возврат булева "Пока не НаборЗаписей.EOF() Цикл"

и будет работать
Kolyasik; Jivchic; +2 Ответить
7. Arcanist 21.09.09 16:14 Сейчас в теме
СтрокаТаблици, СтрокаПод - офигенные названия переменных...
8. Jivchic 94 14.07.10 09:59 Сейчас в теме
заменить "СоздатьОбъект" и учеть возврат булева "Пока не НаборЗаписей.EOF() Цикл"


можно подробнее, СоздатьОбъект заменил на Новый COMОбъект("ADODB. ")...

но что то неполучается...
9. Jivchic 94 15.07.10 10:57 Сейчас в теме
10. FindSS 27.09.10 20:29 Сейчас в теме
Вышеприведенный код вполне ясен. Проблема в том, что не могу найти как получить программно все наименования таблиц в базе Акцесса.
12. andrei.k 10.06.12 13:56 Сейчас в теме
Спасибо, все понятно. Очень пригодится. Присоединяюсь к (10), не плохо бы получить список всех таблиц.
11. genadyichnew 21.01.12 14:29 Сейчас в теме
13. pyrkin_vanya 488 08.02.16 12:53 Сейчас в теме
У меня в файле несколько таблиц. Как получить имени этих таблиц?
15. pyrkin_vanya 488 08.02.16 20:42 Сейчас в теме
Оставьте свое сообщение