Кому что надо — тот поправит.
А времени немного сэкономить поможет.
Процедура КнопкаВыполнитьНажатие(Кнопка)
// Вставить содержимое обработчика.
СпрТов=Справочники.Номенклатура;
МестаХранения=Справочники.МестаХранения;
КоличествоПомещений=7;
КоличествоСтеллажей=7;
КоличествоЛиний=7;
КоличествоМест=25;
Ячейка=0;
Для Скл=1 По 2 Цикл
Склады=Скл;
Если Склады=1 Тогда
СпрСклад=Справочники.Склады.НайтиПоКоду(«00002»);
Иначе
СпрСклад=Справочники.Склады.НайтиПоКоду(«00001»);
КонецЕсли;
Для сч=0 По КоличествоПомещений Цикл
Помещение=сч;
//********Помещения
НовМестоП=МестаХранения.НайтиПоНаименованию(«Помещение»+Строка(Помещение),,,СпрСклад);
Если НовМестоП=МестаХранения.ПустаяСсылка() Тогда
НовМестоП=МестаХранения.СоздатьГруппу();
НовМестоП.Владелец =СпрСклад;
НовМестоП.Наименование=«Помещение»+Строка(Помещение);
НовМестоП.Записать();
КонецЕсли;
//*****************
Для Ст=1 По КоличествоСтеллажей Цикл
Стеллаж=Ст;
//********Стеллаж
НовМестоСт=МестаХранения.НайтиПоНаименованию(«Стеллаж»+Строка(Стеллаж),,НовМестоП.Ссылка,СпрСклад);
Если НовМестоСт=МестаХранения.ПустаяСсылка() Тогда
НовМестоСт=МестаХранения.СоздатьГруппу();
НовМестоСт.Владелец =СпрСклад;
НовМестоСт.Родитель =НовМестоП.Ссылка;
НовМестоСт.Наименование=«Стеллаж»+Строка(Стеллаж);
НовМестоСт.Записать();
КонецЕсли;
//*****************
Для Л=1 По КоличествоЛиний Цикл
Линия=Л;
//********Линия
НовМестоЛ=МестаХранения.НайтиПоНаименованию(«Линия»+Строка(Линия),,НовМестоСт.Ссылка,СпрСклад);
Если НовМестоЛ=МестаХранения.ПустаяСсылка() Тогда
НовМестоЛ=МестаХранения.СоздатьГруппу();
НовМестоЛ.Владелец=СпрСклад;
НовМестоЛ.Родитель =НовМестоСт.Ссылка;
НовМестоЛ.Наименование=«Линия»+Строка(Линия);
НовМестоЛ.Записать();
КонецЕсли;
//*****************
Для М=1 По КоличествоМест Цикл
Место=М;
Состояние(«Скл»+Строка(Склады)+«-«+«П»+Строка(Помещение)+«-«+«Ст»+Строка(Стеллаж)+«-«+«Л»+Строка(Линия)+«-«+«М»+Строка(Место)+«-«+«Я0»);
СтрокаХранения=«П»+Строка(Помещение)+«-Ст»+Строка(Стеллаж)+«-Л»+Строка(Линия)+«-М»+Строка(Место)+«-Я»+Строка(Ячейка) ;
//********Место
НовМестоМ=МестаХранения.НайтиПоНаименованию(«Место»+Строка(Место),,НовМестоЛ.Ссылка,СпрСклад);
Если НовМестоМ=МестаХранения.ПустаяСсылка() Тогда
НовМестоМ=МестаХранения.СоздатьГруппу();
НовМестоМ.Владелец =СпрСклад;
НовМестоМ.Родитель =НовМестоЛ.Ссылка;
НовМестоМ.Наименование=«Место»+Строка(Место);
НовМестоМ.Записать();
КонецЕсли;
//*****************
//********Ячейка
НовМестоЯ=МестаХранения.НайтиПоНаименованию(«Ячейка»+Строка(Ячейка),,НовМестоМ.Ссылка,СпрСклад);
Если НовМестоЯ=МестаХранения.ПустаяСсылка() Тогда
НовМестоЯ=МестаХранения.СоздатьГруппу();
НовМестоЯ.Владелец =СпрСклад;
НовМестоЯ.Родитель =НовМестоМ.Ссылка;
НовМестоЯ.Наименование=«Ячейка»+Строка(Ячейка);
НовМестоЯ.Записать();
КонецЕсли;
//*****************
НовМесто=МестаХранения.НайтиПоНаименованию(СтрокаХранения,,НовМестоЯ.Ссылка,СпрСклад);
Если НовМесто=МестаХранения.ПустаяСсылка() Тогда
НовМесто=МестаХранения.СоздатьЭлемент();
НовМесто.Владелец =СпрСклад;
НовМесто.Родитель=НовМестоЯ.Ссылка;
НовМесто.Наименование=СтрокаХранения;
НовМесто.Записать();
КонецЕсли;
//Вырезан нижестоящий фрагмент
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
Сообщить(«Обработка закончена !»);
КонецПроцедуры
Иполнитель: 2012 г. www.rt-finance.ru
А более подробно описать реализуемый сценарий можно?
Предпочтительнее в анотации описать Сценарий генерации, а примечания о черновом характере спустить в текст.
В противном случае, пока не разберёшь код, ни фига не понятно…