Доброго времени суток. нету случайно где-нить готовой обработки такой.<br>Есть базы данных SQL (не 1с) от туда надо просто перенести наименования в (1с SQL) в номенклатуру, просто списком, хотя бы просто название, что бы руками не создавать кучу.
> написать запрос на аддо ?<br>> <br>> http://aitika.ru/otvety/1973-1c-Kak-podklyuchitsya-k-baze-My-SQL-<br><br>Zak555 .. это единоразовая задача. так что надо как по проще и по быстрее ...не понял что ты имел ввиду под этой ссылкой.<br>у нас MS sql а не My Sql это ведь не одно и тоже хотя я совсем не секу в Сиквеле.<br><br>Смысл в том что есть 2 БД одна не 1с...вторая БД для 1с (оба ессесно sql) надо тупо из одной БД (из таблице) запихнуть все во вторую БД в таблицу .. таблица содержит только наименования (названия) просто их очень много, руками не перепишешь.<br>в 1с это будет в справочнике<br><br>
Я просто в sql полный ноль.<br><br>Я знаю название таблицы в базе sql от куда нужно взять все наименования. я знаю название таблицы в sql куда нужно впихнуть все наименования. а как это реализовать (не обязательно с помощью 1с) можно и по другому, я без понятия
"мне показалась данная задачка интересной и я придумал решение и даже протестил его:<br><br>Процедура Сформировать()<br> //здесь<br> //192.168.7.70 = ip Microsoft SQL Server<br> //User1C = пользователь, имеющий права доступа на базу в MS SQL Server (обычно sa, но я всегда меняю)<br> //omega = пароль пользователя<br> //BaseID = идентификатор базы<br> <br> ConnectionString = "Provider=SQLOLEDB;Data Source=192.168.7.70;Password=omega;User ID=User1C;Initial Catalog=BaseID";<br> <br> Соединение = СоздатьОбъект("ADODB.Connection"); <br> Соединение.ConnectionTimeOut =600;<br> Соединение.CursorLocation = 3;<br> Попытка<br> //здесь:<br> //HH123 - идентификатор поля, где лежит наименование<br> //TT567 - идентификатор таблицы, где лежат нужные данные<br> <br> Номенклатура=СоздатьОбъект("Справочник.Номенклатура");<br> Соединение.Open(ConnectionString); <br> Cmd = СоздатьОбъект("ADODB.Command");<br> Cmd.ActiveConnection = Соединение;<br> Cmd.CommandText = СокрЛП("Select HH123 FROM TT567");<br> Rs = CreateObject("ADODB.RecordSet");<br> Rs = Cmd.Execute;<br> Для i = 1 по Rs.RecordCount Цикл<br> ТекНаименование=СокрЛП(Rs.Fields("HH123").Value);<br> Если Номенклатура.НайтиПоНаименованию(ТекНаименование,0,1)=0 Тогда<br> Номенклатура.Новый();<br> Номенклатура.Наименование=ТекНаименование;<br> Номенклатура.Записать();<br> КонецЕсли;<br> Rs.MoveNext();<br> КонецЦикла;<br><br> Rs=0;<br> Соединение=0;<br> Исключение<br> Предупреждение(ОписаниеОшибки());<br> Соединение=0;<br> КонецПопытки;<br>КонецПроцедуры"
Воот спасибо большое. я так понимаю это надо в 1с писать. а где? в глМодуле.<br>Всмысле где надо написать этот скрипт что бы он запустился. <br>И есть Справочник не номенлатура а Склады (Места хранения) <br>То просто заменить место номеклатуры?