|
создание элемента номенклатуры | ☑ | ||
|---|---|---|---|---|
|
0
dimonl
06.11.08
✎
15:22
|
Подскажите как при создании элемента справочника задать значение для ЕдиницаДляОтчетов. Проблемма в том что задать ее похоже можно только полсе создания элемента номенклатуры. А как отредактировать уже созданный объект я инфы не нашел.
|
|||
|
1
butterbean
06.11.08
✎
15:25
|
(0) как-то так
Объект.Записать(); Объект.ЕдиницаДляОтчетов = ......; Объект.Записать(); |
|||
|
2
Falcon
06.11.08
✎
15:27
|
(0) а в чём проблема?
|
|||
|
3
dimonl
06.11.08
✎
15:28
|
Так не получается. Элемент не доступен для записи.
Я тут ошибся с версией у меня v8. |
|||
|
4
Sadovnikov
06.11.08
✎
15:28
|
(3) Показывай, как делаешь.
|
|||
|
5
dimonl
06.11.08
✎
15:30
|
пытался разными способами. сейчас выложу.
|
|||
|
6
dimonl
06.11.08
✎
15:49
|
Вот первый вариант. Сначала записал элемент номенклатуры. Потом единицу измерения. Поле ЕдиницаДляОтчетов и ЕдиницаХраненияОстатков для записи недоступна.
............ Объект.Записать(); НайденыйОбъект=Спр.НайтиПоНаименованию(НаименованиеВ); НовЕд=СпрЕд.СоздатьЭлемент(); НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); НовЕд.Наименование=Нов.БазоваяЕдиницаИзмерения.Наименование; НовЕд.Владелец=НайденыйОбъект; НовЕд.Записать(); НайденыйОбъект.ЕдиницаДляОтчетов=НовЕд.Наименование; НайденыйОбъект.ЕдиницаХраненияОстатков=НовЕд.Наименование; НайденыйОбъект.записать; |
|||
|
7
butterbean
06.11.08
✎
15:50
|
(6) накуа нужно
НайденыйОбъект=Спр.НайтиПоНаименованию(НаименованиеВ); ????? работай с Объект |
|||
|
8
butterbean
06.11.08
✎
15:51
|
(7)+ и посмотри повнимательнее на тип реквизита ЕдиницаДляОтчетов
|
|||
|
9
Sadovnikov
06.11.08
✎
15:51
|
(6) Объект - это тот самый элемент справочника Номенклатура?
Если да, то зачем НайденыйОбъект=Спр.НайтиПоНаименованию(НаименованиеВ); ? Ну а дальше вообще что-то непонятное идет. Очень подозреваю, что НайденыйОбъект.ЕдиницаДляОтчетов - это все-таки не строка. Так зачем в него строку пихать? Совет - разберись с понятием "тип данных". |
|||
|
10
dimonl
06.11.08
✎
15:52
|
сейчас попробую. спасибо!
|
|||
|
11
dimonl
06.11.08
✎
15:53
|
На счет строки вы правы. Это я просто варианты разные пробовал.
|
|||
|
12
Sadovnikov
06.11.08
✎
15:54
|
(11) Так варианты-то разумные надо пробовать :)
|
|||
|
13
dimonl
06.11.08
✎
15:54
|
но ЕдиницаДляОтчетов для записи недоступна в любом случае.
|
|||
|
14
dimonl
06.11.08
✎
15:55
|
сейчас буду пробовать
|
|||
|
15
butterbean
06.11.08
✎
15:55
|
(13) даже у Объект??
|
|||
|
16
dimonl
06.11.08
✎
15:57
|
нет. я в процессе...
|
|||
|
17
dimonl
06.11.08
✎
16:05
|
заменил на объект.
............ Объект.Записать(); НайденыйОбъект=Спр.НайтиПоНаименованию(НаименованиеВ); НовЕд=СпрЕд.СоздатьЭлемент(); НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); НовЕд.Наименование=Объект.БазоваяЕдиницаИзмерения.Наименование; НовЕд.Владелец=Объект; НовЕд.Записать(); Объект.ЕдиницаДляОтчетов=НовЕд; Объект.ЕдиницаХраненияОстатков=НовЕд; Объект.записать; Результат не может задать владельца: Ошибка при вызове метода контекста (Записать): Владелец не задан или задан неверно! НовЕд.Записать(); |
|||
|
18
Sadovnikov
06.11.08
✎
16:06
|
(17)
НовЕд.Владелец=Объект.Ссылка; ? |
|||
|
19
butterbean
06.11.08
✎
16:06
|
(17) тебе бы почитать че-нить...
НовЕд.Владелец=Объект.Ссылка; |
|||
|
20
Green_Zu
06.11.08
✎
16:10
|
НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); - эт ты зачем делаешь? Тебе надо на каждый элемент номенклатуры создать свой элемент КлассификаторЕдиницИзмерения, если он подчинен.
|
|||
|
21
dimonl
06.11.08
✎
16:16
|
Единицы измерения я делаю перед этим. то есть на данный момент они уже есть
|
|||
|
22
dimonl
06.11.08
✎
16:31
|
а СпрЕд= Справочники.ЕдиницыИзмерения то есть совершенно отдельный справочник.
|
|||
|
23
dimonl
06.11.08
✎
16:33
|
Сделал Объект.Ссылка но поля ЕдиницаДляОтчетов и ЕдиницаХраненияОстатков не заполнились.
Объект.Записать(); НайденыйОбъект=Спр.НайтиПоНаименованию(НаименованиеВ); НовЕд=СпрЕд.СоздатьЭлемент(); НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); НовЕд.Наименование=Объект.БазоваяЕдиницаИзмерения.Наименование; НовЕд.Владелец=Объект.ссылка; НовЕд.Записать(); Объект.ЕдиницаДляОтчетов=НовЕд; Объект.ЕдиницаХраненияОстатков=НовЕд; Объект.записать; |
|||
|
24
butterbean
06.11.08
✎
16:33
|
(23) опять...
НовЕд.Ссылка :-) |
|||
|
25
dimonl
06.11.08
✎
16:34
|
Что интересно в самой базе если открыть созданный элемент и нажать записать то они автоматически заполняются на основании базовый единицы измерения
|
|||
|
26
butterbean
06.11.08
✎
16:36
|
(25) поизучай события, которые происходят при записи номенклатуры
|
|||
|
27
dimonl
06.11.08
✎
16:42
|
НовЕд.Ссылка не помогла. буду в отладчике смотреть...
|
|||
|
28
dimonl
06.11.08
✎
16:47
|
а может проще открыть созданный объект на запись и задать ЕдиницаДляОтчетов?
Только вопрос в том как в 1с открыть уже сеществующий объект на запись? кто-нибудь знает? |
|||
|
29
butterbean
06.11.08
✎
16:51
|
(28) чего теперь не работает??
|
|||
|
30
dimonl
06.11.08
✎
16:52
|
просто эти поля остались пустыми...
|
|||
|
31
butterbean
06.11.08
✎
16:53
|
(30) весь код покажи
|
|||
|
32
dimonl
06.11.08
✎
17:00
|
Процедура Кнопка4Нажатие(Элемент)//ПФ //ПоступлениеТоваровУслуг
//Если РодительВОрг=справочники.Организации.ПустаяСсылка() тогда Если ЭлементыФормы.Надпись1.Значение="организация не выбрана" тогда Предупреждение("Не выбрана организация",4); Возврат; конецЕсли; ИмяФайла = "I:\PARUS\IMPORT\zao_pf1.csv"; Если ПустаяСтрока(ИмяФайла) = Истина Тогда Возврат; КонецЕсли; xl = Новый COMОбъект("Excel.Application"); Книга=xl.Application.Workbooks.Open(ИмяФайла); ТекЛист=Книга.WorkSheets(1); Сч = 0; Для й = 1 По 10000 Цикл КодОС = ТекЛист.Cells(й,1).Value; Если ПустаяСтрока(Строка(КодОС)) = Истина Тогда Сч = Сч + 1; КонецЕсли; Если Сч = 5 Тогда Прервать; КонецЕсли; КонецЦикла; xl.Application.Quit(); xl = 0; КолСтрок = й - Сч; //Если ПустаяСтрока(ИмяФайла) = Истина Тогда //Предупреждение("Не выбран файл!",4); //Возврат; //КонецЕсли; xl = Новый COMОбъект("Excel.Application"); Книга=xl.Application.Workbooks.Open("I:\PARUS\IMPORT\ZAO_PF3_copia.xls"); ТекЛист=Книга.WorkSheets(1); //xl.Application.Run("Y:\NETWORK\1C\KeuneR2.xls!exel2"); //xl.Application.Run("KeuneR2.xls!exel3"); xl.Application.Run("ZAO_PF3_copia.xls!exel_3"); //ТекЛист.Columns("A:A").Select; //range=xl.Cells(1,1); //qry=Book.ActiveSheet.QueryTables.Add("URL;http://www.celler.ru/prices/sellphones/?idf=30", range); //ТекЛист.Selection.TextToColumns(range);//, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:=True; //ТекЛист.Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:=True; xl.Application.Quit(); xl = 0; Предупреждение("Файл обработан ",2); ИмяФайла = "I:\PARUS\IMPORT\ZAO_PF4.xls"; Если ПустаяСтрока(ИмяФайла) = Истина Тогда Предупреждение("Не выбран файл!",4); Возврат; КонецЕсли; ФайлВыгрузкиПриИзменении4(); xl = Новый COMОбъект("Excel.Application"); Книга=xl.Application.Workbooks.Open(ИмяФайла); ТекЛист=Книга.WorkSheets(1); НовДок = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент(); УИН = Новый УникальныйИдентификатор(); НомерТ = УИН;//ТекЛист.Cells(1,10).Value; Номер = УИН; GroupТ = ТекЛист.Cells(1,2).Value; Спр = Справочники.Номенклатура; СпрСерия = Справочники.СерииНоменклатуры; СпрЕд= Справочники.ЕдиницыИзмерения; j=1; КоэфРозн=1.20; КоэфОпт=1.15; Для й = 1 По КолСтрок Цикл //Номер = УИН; //ТекЛист.Cells(й,10).Value; Сообщить ("группа "+ ТекЛист.Cells(й,1).Value+"й="+й ); Если ТекЛист.Cells(й,1).Value="Group:" Тогда Group=ТекЛист.Cells(й,2).Value; й=й+1; Сообщить ("й="+й ); КонецЕсли; Сообщить ("Group= "+ Group+"GroupТ="+GroupТ ); Если 1 = 1 Тогда Артикул = ТекЛист.Cells(й,1).Value; НаименованиеВ = ТекЛист.Cells(й,2).Value; ЕдВ = ТекЛист.Cells(й,3).Value; Количество = ТекЛист.Cells(й,4).Value; Сумма = ТекЛист.Cells(й,5).Value; НДС_Сумма= ТекЛист.Cells(й,6).Value; РодительВ = GroupТ; //ТекЛист.Cells(й,11).Value; НДС_В = ТекЛист.Cells(й,13).Value; Страна = ТекЛист.Cells(й,11).Value; НомерГТД = ТекЛист.Cells(й,12).Value; атрибут = ТекЛист.Cells(й,13).Value; компания = ТекЛист.Cells(й,14).Value; Если Страна = "США" Тогда Страна="СОЕДИНЕННЫЕ ШТАТЫ"; КонецЕсли; Если ПересчетЦены=Истина тогда Если атрибут=18 тогда Серия=НомерГТД+0.00;//+"_"+Окр(Цена*100,0); Цена =Сумма/КоэфОпт/Количество;//Сумма/1.18/КоэфОпт/Количество;//; = Сумма/1.18/1.25; иначе Если атрибут=32 тогда Серия=НомерГТД+0.00;//+"_"+Окр(Цена*100,0); Цена =Сумма/КоэфРозн/Количество;//Сумма/1.18/КоэфРозн/Количество; иначе Серия=НомерГТД+0.00;//+"_"+Окр(Цена*100,0); Цена =Сумма/Количество;//Сумма/1.18/Количество; Сообщить ("Артикул: "+Артикул+ " Атрибут "+атрибут+" цена не проиндексирована!!!"); КонецЕсли; КонецЕсли; Иначе Цена = Сумма/Количество;//Сумма/1.18/Количество; Цена_С_НДС=Сумма/Количество+НДС_Сумма/Количество; Серия=НомерГТД+"_"+Окр(Цена_С_НДС,2); Серия=СтрЗаменить(Серия, ",", "."); Конецесли; //Серия=НомерГТД+"_"+Окр(Цена*100,0); // Цена =Сумма/Количество; //ТекЛист.Cells(й,5).Value; НайденныйЭл = Спр.НайтиПоНаименованию(НаименованиеВ); Если НайденныйЭл = Спр.ПустаяСсылка() Тогда //Ищем группу НайденнаГруп = Спр.НайтиПоНаименованию(РодительВ); Если ПустаяСтрока(РодительВ) Тогда РодительВ="неопознанное"; КонецЕсли; Если НайденнаГруп = Спр.ПустаяСсылка() Тогда НовГруп = Спр.СоздатьГруппу(); УИ = Новый УникальныйИдентификатор(); // НовГруп.УстановитьСсылкуНового(Спр.ПолучитьСсылку(УИ)); // Если РодительВОрг="ЗАОПФФеникс" Тогда Если компания="Косметика" Тогда НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду("3124134"); КонецЕсли; Если компания="Грили" Тогда НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду("00000000002"); КонецЕсли; Если компания="Камины" Тогда НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду("00000000003"); КонецЕсли; Если компания="Отделочные материалы" Тогда НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду("00000000004"); КонецЕсли; // иначе //Если РодительВОрг="ЗАО ПФ Феникс" Тогда // Если РодительВГлоб="Косметика" Тогда // НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду(РодительВГлоб); // КонецЕсли; //// НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду(РодительВГлоб); // КонецЕсли; // Если РодительВГлоб="Камины" Тогда // НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду(РодительВГлоб); // КонецЕсли; // Если РодительВГлоб="Отделочные материалы" Тогда // НовГруп.Родитель = Справочники.Номенклатура.НайтиПоКоду(РодительВГлоб); // КонецЕсли; // конецЕсли; //НовГруп.Родитель = РодительВГлоб;//Справочники.Номенклатура.НайтиПоНаименованию("Товары склад"); НовГруп.Наименование = РодительВ; НовГруп.Код = УИ; НовГруп.Записать(); Сообщить ("Создана группа: "+ РодительВ ); КонецЕсли; //КонецЕсли; Нов = Спр.СоздатьЭлемент(); // D=ТекущаяДата(); Нов.Код = Артикул;//+D; Нов.ВидНоменклатуры= Справочники.ВидыНоменклатуры.НайтиПоНаименованию("товар"); Нов.Родитель = Справочники.Номенклатура.НайтиПоНаименованию(РодительВ); Нов.Наименование = НаименованиеВ; Нов.НаименованиеПолное = НаименованиеВ; Нов.ВестиУчетПоСериям=Истина; Нов.ВестиПартионныйУчетПоСериям=Истина; НовСерия= СпрСерия.СоздатьЭлемент(); НовСерия.Наименование=Серия; НайденнаГТД = Справочники.НомераГТД.НайтиПоКоду(НомерГТД); Если НайденнаГТД = Справочники.НомераГТД.ПустаяСсылка() Тогда Сообщить ("Не найден номер ГТД и будет создан: "); ГТД = Справочники.НомераГТД.СоздатьЭлемент(); ГТД.Код = НомерГТД; ГТД.Записать(); НовСерия.НомерГТД=Справочники.НомераГТД.НайтиПоКоду(НомерГТД); Иначе НовСерия.НомерГТД = НайденнаГТД; КонецЕсли; НайденнаЕД = Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); Если НайденнаЕД = Справочники.КлассификаторЕдиницИзмерения.ПустаяСсылка() Тогда Если Найти(ЕдВ, "шт") > 0 Тогда Нов.БазоваяЕдиницаИзмерения=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); Нов.ЕдиницаДляОтчетов=Справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт"); Нов.ЕдиницаХраненияОстатков=Справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт"); иначе Сообщить ("Не найдена единица измерения: "+ ЕдВ ); Ед = Справочники.КлассификаторЕдиницИзмерения.СоздатьЭлемент(); Ед.Наименование = ЕдВ; Ед.НаименованиеПолное = ЕдВ; УИ = Новый УникальныйИдентификатор(); Ед.Код = УИ; Ед.Записать(); //Ед. //Ед.Код = Ед.Записать(); Нов.БазоваяЕдиницаИзмерения=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); Нов.ЕдиницаДляОтчетов=Справочники.ЕдиницыИзмерения.НайтиПоНаименованию(ЕдВ); Нов.ЕдиницаХраненияОстатков=Справочники.ЕдиницыИзмерения.НайтиПоНаименованию(ЕдВ); КонецЕсли; Иначе Нов.БазоваяЕдиницаИзмерения = НайденнаЕД; Нов.ЕдиницаДляОтчетов=НайденнаЕД; Нов.ЕдиницаХраненияОстатков=НайденнаЕД; КонецЕсли; Если НДС_В=0 тогда Нов.СтавкаНДС= Перечисления.СтавкиНДС.БезНДС; КонецЕсли; Если НДС_В=10 тогда Нов.СтавкаНДС= Перечисления.СтавкиНДС.НДС10; КонецЕсли; Если НДС_В=18 тогда Нов.СтавкаНДС= Перечисления.СтавкиНДС.НДС18; КонецЕсли; Если НДС_В=20 тогда Нов.СтавкаНДС= Перечисления.СтавкиНДС.НДС20; КонецЕсли; // Нов .СтавкаНДС = НДС; НайденнаСтрана = Справочники.КлассификаторСтранМира.НайтиПоНаименованию(Страна); Если НайденнаСтрана = Спр.ПустаяСсылка() Тогда Сообщить ("Не найдена страна: "+ Страна ); Иначе Нов.СтранаПроисхождения = НайденнаСтрана; КонецЕсли; Если Страна = "США" Тогда Нов.СтранаПроисхождения=Справочники.КлассификаторСтранМира.НайтиПоНаименованию("СОЕДИНЕННЫЕ ШТАТЫ"); КонецЕсли; Сообщить ("группа: "+ РодительВ + " элемент: " + НаименованиеВ+ "КОД" + Нов.Код+ "записан будет!"); УИ = Новый УникальныйИдентификатор(); Нов.УстановитьСсылкуНового(Спр.ПолучитьСсылку(УИ)); НовСерия.Владелец=Нов.ПолучитьСсылкуНового(); НовСерия.СтранаПроисхождения=Нов.СтранаПроисхождения; //НовЕд=СпрЕд.СоздатьЭлемент(); //НовЕд.Наименование=Нов.БазоваяЕдиницаИзмерения.Наименование; //УИ2 = Новый УникальныйИдентификатор(); //Нов.УстановитьСсылкуНового(Спр.ПолучитьСсылку(УИ2)); //НовЕд.Владелец=Нов.ПолучитьСсылкуНового(); //Нов.ОсновнойДоговорКонтрагента=НовДоговор.ПолучитьСсылкуНового(); Нов.Записать(); НовСерия.Записать(); //Н=Спр.НайтиПоНаименованию(НаименованиеВ); НовЕд=СпрЕд.СоздатьЭлемент(); Если Найти(ЕдВ, "шт") > 0 Тогда НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); иначе НовЕд.ЕдиницаПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЕдВ); конецЕсли; НовЕд.Наименование=Нов.БазоваяЕдиницаИзмерения.Наименование; НовЕд.Владелец=Нов.Ссылка; Нов.ЕдиницаДляОтчетов=НовЕд.Ссылка; Нов.ЕдиницаХраненияОстатков=НовЕд.Ссылка; Нов.Записать(); НовЕд.Записать(); КонецЕсли; //КонецЕсли; НайденнаСерия=СпрСерия.НайтиПоНаименованию(Серия); Сообщить ("НайденнаСерия: "+ НайденнаСерия); Если НайденнаСерия=СпрСерия.ПустаяСсылка() Тогда НовСерия= СпрСерия.СоздатьЭлемент(); НовСерия.Наименование=Серия; НайденнаГТД = Справочники.НомераГТД.НайтиПоКоду(НомерГТД); Если НайденнаГТД = Справочники.НомераГТД.ПустаяСсылка() Тогда Сообщить ("Не найден номер ГТД и будет создан: "); ГТД = Справочники.НомераГТД.СоздатьЭлемент(); ГТД.Код = НомерГТД; ГТД.Записать(); НовСерия.НомерГТД=Справочники.НомераГТД.НайтиПоКоду(НомерГТД); Иначе НовСерия.НомерГТД = НайденнаГТД; КонецЕсли; Н=Спр.НайтиПоНаименованию(НаименованиеВ); // Нов2=Н.ПолучитьОбъект(); // УИ = Новый УникальныйИдентификатор(); //Нов2.УстановитьСсылкуНового(Спр.ПолучитьСсылку(УИ)); НовСерия.Владелец=Н;//Нов2;//.ПолучитьСсылкуНового(); // Нов.Записать(); НовСерия.СтранаПроисхождения=Н.СтранаПроисхождения; НовСерия.Записать(); Сообщить ("Создана серия: "+ Серия); КонецЕсли; НоваяСтрокаТабличнойЧасти=НовДок.Товары.Добавить(); НоваяСтрокаТабличнойЧасти.Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию(НаименованиеВ); НоваяСтрокаТабличнойЧасти.Количество=Количество; НоваяСтрокаТабличнойЧасти.СтавкаНДС=Перечисления.СтавкиНДС.НДС18; НоваяСтрокаТабличнойЧасти.СерияНоменклатуры= Справочники.СерииНоменклатуры.НайтиПоНаименованию(Серия); НоваяСтрокаТабличнойЧасти.Цена = Цена; Если Найти(ЕдВ, "шт") > 0 Тогда НоваяСтрокаТабличнойЧасти.ЕдиницаИзмерения= СпрЕд.НайтиПоНаименованию("шт"); иначе НоваяСтрокаТабличнойЧасти.ЕдиницаИзмерения= СпрЕд.НайтиПоНаименованию(ЕдВ); КонецЕсли; //НоваяСтрокаТабличнойЧасти.Сумма = Сумма; Если ПересчетЦены=Истина тогда Если атрибут=18 тогда НоваяСтрокаТабличнойЧасти.Сумма = Сумма/КоэфОпт; иначе Если атрибут=32 тогда НоваяСтрокаТабличнойЧасти.Сумма = Сумма/КоэфРозн; иначе НоваяСтрокаТабличнойЧасти.Сумма = Сумма; Сообщить ("Артикул: "+Артикул+ " Атрибут "+атрибут+" цена не проиндексирована!!!"); КонецЕсли; КонецЕсли; Иначе НоваяСтрокаТабличнойЧасти.Сумма = Сумма; Конецесли; // НоваяСтрокаТабличнойЧасти.Сумма = Сумма/1.18; НоваяСтрокаТабличнойЧасти.СуммаНДС = НДС_Сумма; //Сумма*1.18-Сумма; // НоваяСтрокаТабличнойЧасти.СчетУчетаБУ = Планысчетов.Хозрасчетный.ТоварыНаСкладах; // НоваяСтрокаТабличнойЧасти.СчетУчетаНДС= Планысчетов.Хозрасчетный.НДСпоПриобретеннымМПЗ;//СчетУчетаНДСПоРеализации = Планысчетов.Хозрасчетный.Продажи_НДС; // НоваяСтрокаТабличнойЧасти.СчетДоходовБУ = Планысчетов.Хозрасчетный.ВыручкаНеЕНВД; //НоваяСтрокаТабличнойЧасти.СубконтоБУ = Справочники.НоменклатурныеГруппы.НайтиПоНаименованию("Опт"); //НоваяСтрокаТабличнойЧасти.СубконтоНУ = Справочники.НоменклатурныеГруппы.НайтиПоНаименованию("Опт"); //НоваяСтрокаТабличнойЧасти.СчетРасходовБУ = Планысчетов.Хозрасчетный.СебестоимостьПродажНеЕНВД; // НоваяСтрокаТабличнойЧасти.СчетУчетаНУ = Планысчетов.Налоговый.ТоварыНаСкладах; //НоваяСтрокаТабличнойЧасти.СчетДоходовНУ=Планысчетов.Налоговый.ВыручкаОтРеализацииПокупныхТоваров; //НоваяСтрокаТабличнойЧасти.СчетРасходовНУ=Планысчетов.Налоговый.СебестоимостьПродаж; // НоваяСтрокаТабличнойЧасти..НомерГТД=Справочники.НомераГТД.НайтиПоКоду(НомерГТД);//НомерГТД; // НоваяСтрокаТабличнойЧасти.СтранаПроисхождения=Справочники.КлассификаторСтранМира.НайтиПоНаименованию(Страна); //Страна;//Нов.СтранаПроисхождения.Наименование; Если й = КолСтрок Тогда Дата = ТекущаяДата();//ТекЛист.Cells(j,8).Value; //Дата = Лев(Дата,6)+"20"+Прав(Дата,2); //Дата = "20"+Прав(Дата,2)+Прав(Лев(Дата,5),2)+ Лев(Дата,2); //сообщить ("Data: "+ Дата); //Дата = СтрЗаменить(Дата, "06", "2006"); //Дата = СтрЗаменить(Дата, ".", ""); //Организация = ТекЛист.Cells(j,12).Value; НайденнОрг = Справочники.Организации.НайтиПоНаименованию(РодительВОрг); //НайденнОрг = Справочники.Организации.НайтиПоКоду("000000001"); Если НайденнОрг = Справочники.Организации.ПустаяСсылка() Тогда Сообщить ("Не найдена организация по коду: "+ НайденнОрг); Возврат; //Кон = Справочники.Организации.СоздатьЭлемент(); //Кон.Родитель = Справочники.Организация.НайтиПоНаименованию("Покупатели2"); //Кон.Наименование = Организация; //Кон.НаименованиеПолное = Организация; //Ед.Код = //Кон.Записать(); //НовДок.Организация =Справочники.Организации.НайтиПоНаименованию(Организация); Иначе НовДок.Организация = Справочники.Организации.НайтиПоНаименованию(РодительВОрг); КонецЕсли; //ТекЛист.Cells(j,9).Value; НайденнКон = Справочники.Контрагенты.НайтиПоКоду("000000002"); //Справочники.Контрагенты.НайтиПоНаименованию(Контрагент); Если НайденнКон = Справочники.Контрагенты.ПустаяСсылка() Тогда Сообщить ("Не найден контрагент и будет создан: "+ НайденнКон); //Кон = Справочники.Контрагенты.СоздатьЭлемент(); //Кон.Родитель = Справочники.Контрагенты.НайтиПоНаименованию("Покупатели2"); //Кон.Наименование = Контрагент; //Кон.НаименованиеПолное = Контрагент; //Ед.Код = //Кон.Записать(); НовДок.Контрагент =НайденнКон;//Справочники.Контрагенты.НайтиПоНаименованию(Контрагент); Иначе НовДок.Контрагент = НайденнКон; КонецЕсли; //Новдок.ВидОперации= Новдок.ДоговорКонтрагента=Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000000001"); НовДок.Комментарий ="торговля"; НовДок.Номер = НомерТ; //НовДок.Дата=ТекущаяДата(); НовДок.Дата=Дата; //Дата("198403262421"); //НовДок.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию(Контрагент); НовДок.ОтражатьВБухгалтерскомУчете=Истина; НовДок.ОтражатьВУправленческомУчете= Истина; НовДок.ОтражатьВНалоговомУчете=Ложь; //НовДок.ВидОперации=Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ПокупкаКомиссия;//.ВидыОперацийРеализацияТоваров.//ПродажаКомиссия; Новдок.ВидПоступления=Перечисления.ВидыПоступленияТоваров.НаСклад; Новдок.СкладОрдер=Справочники.Склады.НайтиПоНаименованию("Главный склад"); //Новдок.СчетУчетаРасчетовСКонтрагентом= Планысчетов.Хозрасчетный.РасчетыСПоставщиками;//РасчетыСПокупателями; //Новдок.СчетУчетаРасчетовПоАвансам=Планысчетов.Хозрасчетный.РасчетыПоАвансамВыданным;//РасчетыПоАвансамПолученным; Новдок.ВалютаДокумента=Справочники.Валюты.НайтиПоНаименованию("руб."); Новдок.ТипЦен = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("закупка"); Новдок.УчитыватьНДС=Истина; Новдок.СуммаВключаетНДС=Истина; Новдок.КурсВзаиморасчетов=1.0; Новдок.КратностьВзаиморасчетов=1.0; Новдок.СуммаВключаетНДС=Ложь; сообщить ("Data: "+ Дата); НовДок.Записать(); КонецЕсли; КонецЕсли; КонецЦикла; xl.Application.Quit(); xl = 0; Предупреждение("Импорт завершен!",2); КонецПроцедуры |
|||
|
33
v_rtex
06.11.08
✎
17:01
|
многа букав.. ниасилит никто..
|
|||
|
34
dimonl
06.11.08
✎
17:02
|
ну весь код просили ведь... :))
|
|||
|
35
butterbean
06.11.08
✎
17:04
|
(34) у тебя
НовЕд.Записать(); стоит после присвоения... |
|||
|
36
dimonl
06.11.08
✎
17:06
|
записать НовЕд можно толдько после самого элемента номенклатуры
|
|||
|
37
butterbean
06.11.08
✎
17:07
|
(36) он у тебя и так раньше записывается, а потом еще раз, но уже с единицами...
будь внимательнее |
|||
|
38
dimonl
06.11.08
✎
17:13
|
действительно! совсем я запутался уже...
|
|||
|
39
dimonl
06.11.08
✎
17:18
|
Спасибо всем! Сработало!
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |