Имя: Пароль:
1C
 
Заполнение таблиц SQL из 1С 8.1
0 Куница
 
18.09.08
12:35
Стоит задача - заполнить таблицы конкретной базы данных SQL обработкой из 1С 8.1.
У меня была задача выбора информации из таблиц SQL - справилась с помощью книги Андрея михайлова "1С:Предприятие 7.7/8.0.Системное программирование" с помощью интерфейса доступа к данным ADO. Наверняка можно и чистить и наполнять таблицы, используя его же.
Возможно ли это сделать с помощью этого же интерфейса из обычной обработки. Как открыть в ней файл, очистить, создать новую запись,
поменять в ней значения полей на нужные? Какие команды надо использовать? Это в книге, к сожалению, не отражено. Помогите, пожалуйста.
1 ДенисЧ
 
18.09.08
12:37
Для начала прочитать основы SQL, например на firststeps.ru
2 Куница
 
18.09.08
12:48
С запросным языком проблем не возникало, но здесь другое. И естественно, никто не отменял текущую работу, а это задание дали сейчас, а сделать надо вчера. Но все равно спасибо.
3 ДенисЧ
 
18.09.08
12:49
А слова INSERT и UPDATE известны? Тогда в чём проблема?
4 dk
 
18.09.08
12:54
1. Фотка
2. Где конкретные вопросы?
5 Куница
 
18.09.08
12:56
Глянула сайт. Команды, в принципе, понятные и ожидаемые (раньше писала на Visual FoxPro), но как это будет выглядеть в 1С (Как открыть в ней файл, очистить, создать новую запись, поменять в ней значения полей на нужные? -можно ли показать простейший текст программы в 1С) Или же надо создать процедуру на языке SQL, тогда как ее оформлять.
6 ДенисЧ
 
18.09.08
12:57
(5) Для показывай текст, которым читаешь файл.
7 Куница
 
18.09.08
13:01
Как открыть в ней файл, очистить, создать новую запись, поменять в ней значения полей на нужные? -можно ли показать простейший текст программы в 1С
Что-нибудь подобное этому тексту выборки и обработки результатов запроса
           Command = Новый COMОбъект("ADODB.Command");
           Command.ActiveConnection = Connection;
           Command.CommandText =
                   "SELECT...";
           
           RecordSet = Новый COMОбъект("ADODB.RecordSet");
           RecordSet = Command.Execute();
           
           // Перебор данных
               RecordSet.MoveFirst();                
           Пока RecordSet.EOF() = 0 Цикл
               .....
                           RecordSet.MoveNext();  
                       КонецЦикла;
8 ДенисЧ
 
18.09.08
13:05
Command.CommandText =
 "INSERT INTO MyTable (Col1, Col2) VALUES (1, 'qwerty'";
9 Куница
 
18.09.08
13:17
То есть Вы имеете в виду просто подставлять команды в Command.CommandText.
Вы это точно знаете?
В свете вышеприведенного текста для Command целое предисловие
Command = Новый COMОбъект("ADODB.Command");
           Command.ActiveConnection = Connection;
и результат запуска команды помещается в
          RecordSet = Новый COMОбъект("ADODB.RecordSet");
          RecordSet = Command.Execute();
Наверное не все так просто.
А открыть файл для работы с ним - аналог "Use ...", а очистить файл?
10 ДенисЧ
 
18.09.08
13:18
Да, это я и имею в виду.
Очистить DELETE FROM MyTable Where <условие>
11 Куница
 
18.09.08
13:22
А открыть файл для работы с ним - аналог "Use ..." и что-нибудь вроде "Append blank" или "Insert blank"
12 Куница
 
18.09.08
13:24
Простите, про insert Вы говорили.