Имя: Пароль:
1C
1С v8
Работа с БД postgres через ODBC. Можно ли добавить таблицу к БД исполуемую 1С?
,
0 Doomer
 
25.08.11
18:30
Столкнулся с такой ситуацей. Есть необходимость создать таблицу в Postgres и писать данные прямо туда. Эта таблица коственно связана с 1С. Можно ли создать эту таблицу в БД с которой работает 1С? Не будет ли эта таблица сохраняться при сохранении данные и 1С в DT-ник?
1 Amra
 
25.08.11
18:39
1. Можно.
2. Не будет, так 1С "не знает" о этой таблице
2 Alexandr Puzakov
 
25.08.11
18:40
А зачем в этой же БД? Создать новую и пускай она себе тихонечко валяется по соседству с основной, на случай доступа к ней в 8.2.14 реализован механизм доступа к внешним источникам данных. Можно будет даже отчеты на СКД строить.
3 Doomer
 
25.08.11
18:41
(2) Да х.з. Просто таблица хранит данные нужные 1С. Мало ли куда придется перенести БД, да и бекапить проще.
4 apokrit
 
25.08.11
18:45
+(1) 2. Но платформа может ее грохнуть, например в процессе загрузки из dt.
5 Alexandr Puzakov
 
25.08.11
19:41
(3) какие проблемы создать независимый непериодический регистр сведений или справочник? И будет отдельная таблица...
6 Doomer
 
25.08.11
20:03
(5) Проблема в том что база пухнет. А в табице будут храниться картинки. Сейчас как раз они внутри конфигурации.
7 smaharbA
 
25.08.11
20:24
храни ссылки на базу
8 Alexandr Puzakov
 
25.08.11
20:30
(6) так можно их вообще не в базе хранить.

Можно создать отдельный каталог на диске (в месте, куда пользователи не залезут), сохранить путь к нему в констане, в базе добавить справочник. Этот справочник будет хранить только связь с объектами, которым принадлежит картинка, и наименование картинки, а в папке имя картинки будет состоять из уникального идентификатора элемента справочника (!), условно:
a6bdtc3j8jga1xjh.jpg

При необходимости просто достаем картинку из папки (находим по идентификатору элемента справочника) и обзываем ее наименованием из справочника, и все.
9 Doomer
 
25.08.11
20:33
(8) Делал я так с сертификатами и качественными для алкоголиков. Хочеться попробовать вариант в (0) т.к. он обеспечивает хоть какую-то ссылочную целосность. А файлы могут удалить, переименовать, переместить и т.д.
10 smaharbA
 
25.08.11
20:33
(9) а файлы можно делать не доступными не из адинес
11 DmitrO
 
25.08.11
20:41
Я бы хранил в базе, в справочнике. И пусть она раздувается.
12 smaharbA
 
25.08.11
22:04
автор не поверишь

Соединение = СоздатьОбъект("ADODB.Connection");
Стр = "Driver={PostgreSQL ANSI};Server=" + Адрес + ";Port=" + Порт + ";Database=" + База + ";UID=" + Пользователь + ";Pwd=" + Пароль + ";";
Соединение.Open(Стр);
Команда = СоздатьОбъект("ADODB.Command");
Команда.ActiveConnection = Соединение;
Команда.CommandText = "select * from " + Таблица + ";";
Записи = Команда.Execute();
Записи.MoveFirst();
Пока Записи.EOF = 0 Цикл
   Сообщить(Записи.Fields(0),Value);
   Записи.MoveNext();
КонецЦикла;