|
внешняя обработка | ☑ | ||
---|---|---|---|---|
0
Orthodoxxx_
Reprobate 21.02.12
✎
11:45
|
необходимо создать внешнюю обработку по созданию справочника номенклатуры. в этом справочнике должен быть 1 элемент, чтобы он проводился в любом документе. все реквизиты должны быть указаны правильно.
что то я вкурить не могу в задание, подскажите если есть соображения |
|||
1
rbcvg
21.02.12
✎
11:46
|
"что то я вкурить не могу в задание" - ты не одинок
|
|||
2
Kassius
21.02.12
✎
11:47
|
А в чем проблема?
|
|||
3
Orthodoxxx_
Reprobate 21.02.12
✎
11:50
|
для меня тут проблема во всем
для начала я указал реквизиты: дата установки цен, валюта ссылка, родитель ссылка. правильно? добавил основную форму. что еще нужно добавить из данных? |
|||
4
pumbaEO
21.02.12
✎
11:52
|
(3) то что в задаче написано это:
НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент(); НовыйЭлемент.Наименование = "Должен быть 1 элемент"; НовыйЭлемент.Записать(); Внешняя обработка с основной формой и с одной кнопкой "Создать" |
|||
5
D_Pavel
21.02.12
✎
11:55
|
(4) Реквизиты не все заполнил, не будет проводиться такой элемент в любом документе, ошибку выдаст что не заполнен основной договор или склад.
|
|||
6
pumbaEO
21.02.12
✎
12:00
|
(5) Ты прав, в какой нибудь нетленке v8: Смена единицы измерения. У кого есть опыт борьбы? придется еще заполнить какой нибудь реквизит.
|
|||
7
Orthodoxxx_
Reprobate 21.02.12
✎
14:51
|
разобрался
Процедура КнопкаВыполнитьНажатие(Кнопка) // Вставить содержимое обработчика. НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент(); НовыйЭлемент.Наименование = НаименованиеПолное; НовыйЭлемент.СтранаПроисхождения = СтранаПроисхождения; НовыйЭлемент.БазоваяЕдиницаИзмерения = ЕдиницаИзмерения; НовыйЭлемент.СтавкаНДС = СтавкаНДС; НовыйЭлемент.Записать(); КонецПроцедуры |
|||
8
DexterMorgan
21.02.12
✎
14:54
|
(7) Всего то три часа задачку решал xDD
|
|||
9
Orthodoxxx_
Reprobate 21.02.12
✎
14:56
|
я на перекуры ходил еще(%
|
|||
10
DexterMorgan
21.02.12
✎
14:59
|
(9) Скока стоит обработка?
|
|||
11
Orthodoxxx_
Reprobate 21.02.12
✎
15:03
|
шутник великий, может для тебя это пустяк написать, а для меня с моим опытом тут в книжки надо лезть.
и каждый раз когда надо что то спросить, большинство, сидят и пруцца со сваей *ености |
|||
12
palpetrovich
21.02.12
✎
15:03
|
если в (0) задание описано слово в слово, то я тоже не вкуриваю что надо-то :(
|
|||
13
palpetrovich
21.02.12
✎
15:04
|
(11) в верно заданном вопросе - больше половины ответа
|
|||
14
DexterMorgan
21.02.12
✎
15:05
|
(11) Так ты задавай вопросы нормально тебе и ответят: вон например мы пару часов рядом разбивали строку на слова и ниче никто не прецца =))
|
|||
15
D_Pavel
22.02.12
✎
06:44
|
А я сразу понял что нужно было. Еще на (5) посте.
И чувак из (4) тоже вроде понял, но не до конца написал ответ. |
|||
16
Wobland
22.02.12
✎
06:46
|
>должен быть 1 элемент, чтобы он проводился в любом документе
расскажите мне как? как провести элемент справочника? |
|||
17
Rovan
гуру
22.02.12
✎
07:35
|
(+16) а меня не проведешь ! -
элемент справочника на ландыш не похож !! |
|||
18
ЧеловекДуши
22.02.12
✎
08:04
|
Если текст задачи такой как есть, "внешнюю обработку по созданию справочника номенклатуры"
То руки выкрутить, из одного мета, постановщику. Создать справочник из обработки нельзя :) Можно только заполнить. ...ПятничнО... |
|||
19
Рэйв
22.02.12
✎
08:34
|
(0)Как то так:
Процедура ПолеВыбораНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) СтандартнаяОбработка=Ложь; //-------------выбор чегото из ТЗ Элемент.Значение=ЧтоТо; КонецПроцедуры |
|||
20
Рэйв
22.02.12
✎
08:37
|
+(19) Эмм..Не туда:-)...Сторно
|
|||
21
Orthodoxxx_
Reprobate 22.02.12
✎
14:49
|
далее по теме. есть обработка, в которой указываем базовую ед измерения, наименование, поставщика и ндс. все по ссылочкам тут, все работает. задача в след. по нажатии выполнить обработка должна выводится в номенклатуру с автоматически указанными данными по кол-ву. т.е. автоматом должны поставиться ед. хранения остатков, ед. хранения отчетов, мест
как это можно реализовать? по коду что самое интересное у меня проставляются автоматом только НДС Процедура КнопкаВыполнитьНажатие(Кнопка) // Вставить содержимое обработчика. НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент(); НовыйЭлемент.ЕдиницаИзмеренияМест = БазоваяЕдиницаИзмерения; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницаХраненияОстатков; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыДляОтчетов; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыМест; НовыйЭлемент.Наименование = НаименованиеПолное; НовыйЭлемент.НаименованиеПолное = НаименованиеПолное; НовыйЭлемент.ОсновнойПоставщик = ОсновнойПоставщик; НовыйЭлемент.СтавкаНДС = СтавкаНДС; НовыйЭлемент.Записать(); Форма = Справочники.Номенклатура.ПолучитьФормуСписка(); Форма.Открыть(); КонецПроцедуры Процедура ПроверитьЕдиницуХраненияОстатков(Отказ) Если ЗначениеЗаполнено(ЕдиницаХраненияОстатков) Тогда Возврат; КонецЕсли; ВыборкаЕдиниц = Справочники.ЕдиницыИзмерения.Выбрать; Если ВыборкаЕдиниц.Следующий() Тогда НайденнаяЕдиница = ВыборкаЕдиниц.Ссылка; Иначе НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); НайденнаяЕдиницаОбъект.Наименование = БазоваяЕдиницаИзмерения.Наименование; НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = БазоваяЕдиницаИзмерения; НайденнаяЕдиницаОбъект.Коэффициент = 1; НайденнаяЕдиницаОбъект.Владелец = ВыборкаЕдиниц.Ссылка; Попытка НайденнаяЕдиницаОбъект.Записать(); Исключение Сообщить("Не удалось записать единицу хранения остатков: " + ОписаниеОшибки(), СтатусСообщения.Важное); Отказ = Истина; Возврат; КонецПопытки; НайденнаяЕдиница = НайденнаяЕдиницаОбъект.Ссылка; КонецЕсли; КонецПроцедуры |
|||
22
Orthodoxxx_
Reprobate 22.02.12
✎
15:35
|
ап!
|
|||
23
Шапокляк
22.02.12
✎
15:40
|
(21)"задача в след. по нажатии выполнить обработка должна выводится в номенклатуру с автоматически указанными данными по кол-ву." Про язык общения на форуме читали?
|
|||
24
Orthodoxxx_
Reprobate 22.02.12
✎
15:44
|
нет. я как то не вежливо, культурно выразился?
|
|||
25
Шапокляк
22.02.12
✎
15:48
|
(24) Культурно, вежливо. Вы не могли бы излагать свои вопросы на русском языке? Поверьте, очень сложно понять ваш вопрос.
|
|||
26
Orthodoxxx_
Reprobate 22.02.12
✎
16:10
|
нужна обработка на форме которой задаются реквизиты номенклатуры и базовые единицы измерения. при нажатии кнопки выполнить в справочнике номенклатура должен создаваться элемент с этой ед. измерения.
в спойлере код что сделал не знаю как сделать чтобы задавались нужные реквизиты |
|||
27
DexterMorgan
22.02.12
✎
16:20
|
(26) Да просто создай у этой обработки реквизит с типом НоменклатураОбъект и свяжи элемент формы базовая единица измерения с НомеклатураОбъект.БазоваяЕдиницаИзмерения
|
|||
28
Шапокляк
22.02.12
✎
16:28
|
(26) Так более понятно
Процедура КнопкаВыполнитьНажатие(Кнопка) // Вставить содержимое обработчика. НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент(); НовыйЭлемент.ЕдиницаИзмеренияМест = БазоваяЕдиницаИзмерения; ///// а остальные три раза зачем? НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницаХраненияОстатков; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыДляОтчетов; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыМест; НовыйЭлемент.Наименование = НаименованиеПолное; НовыйЭлемент.НаименованиеПолное = НаименованиеПолное; НовыйЭлемент.ОсновнойПоставщик = ОсновнойПоставщик; НовыйЭлемент.СтавкаНДС = СтавкаНДС; НовыйЭлемент.Записать(); Форма = Справочники.Номенклатура.ПолучитьФормуСписка(); ////несколько неясно, а зачем форму списка открывать Форма.Открыть(); КонецПроцедуры Процедура ПроверитьЕдиницуХраненияОстатков(Отказ) //// для чего эта процедура и откуда она вызывается? Если ЗначениеЗаполнено(ЕдиницаХраненияОстатков) Тогда ///а оно откуда заполнится у нового элемента, если см.выше его ни кто не заполняет? Возврат; КонецЕсли; ВыборкаЕдиниц = Справочники.ЕдиницыИзмерения.Выбрать -//// а здесь точно не выдает ошибку? Впрочем, если процедура никогда не запускается, наверно, и не выдает; Если у вас УТ, то справочник Единицы измерения подчинен номенклатуре Если ВыборкаЕдиниц.Следующий() Тогда НайденнаяЕдиница = ВыборкаЕдиниц.Ссылка; Иначе НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); НайденнаяЕдиницаОбъект.Наименование = БазоваяЕдиницаИзмерения.Наименование; НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = БазоваяЕдиницаИзмерения; НайденнаяЕдиницаОбъект.Коэффициент = 1; НайденнаяЕдиницаОбъект.Владелец = ВыборкаЕдиниц.Ссылка;/// так это ж выборка, как она владельцем будет? Попытка НайденнаяЕдиницаОбъект.Записать(); Исключение Сообщить("Не удалось записать единицу хранения остатков: " + ОписаниеОшибки(), СтатусСообщения.Важное); Отказ = Истина; Возврат; КонецПопытки; НайденнаяЕдиница = НайденнаяЕдиницаОбъект.Ссылка; КонецЕсли; А вы такую схему создания элементов справочника придумали, чтобы не давать пользователю прав на интерактивное редактирование? КонецПроцедуры |
|||
29
Orthodoxxx_
Reprobate 24.02.12
✎
10:15
|
второй день уже парюсь с обработкой этой. помогите. конфа Комплексная автоматизация
не могу сделать чтобы после заполнения поля Базовая единица измерения, указанные ед измерения автоматически проставлялись в полях: единица хранения остатков единицы для отчетов единицы мест Процедура КнопкаВыполнитьНажатие(Кнопка) // Вставить содержимое обработчика. НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент(); НовыйЭлемент.ЕдиницаИзмеренияМест = БазоваяЕдиницаИзмерения; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницаХраненияОстатков; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыДляОтчетов; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыМест; НовыйЭлемент.Наименование = НаименованиеПолное; НовыйЭлемент.НаименованиеПолное = НаименованиеПолное; НовыйЭлемент.ОсновнойПоставщик = ОсновнойПоставщик; НовыйЭлемент.СтавкаНДС = СтавкаНДС; НовыйЭлемент.Записать(); Форма = Справочники.Номенклатура.ПолучитьФормуСписка(); Форма.Открыть(); КонецПроцедуры Процедура ЕдиницаХраненияОстатковНачалоВыбора(Элемент, СтандартнаяОбработка) СтандартнаяОбработка = РаботаСДиалогами.ЗаписатьНовыйОбъектВФорме(ЭтаФорма); КонецПроцедуры // ЕдиницаХраненияОстатковНачалоВыбора() Процедура МестаХраненияПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование) Ссылка = Элемент.ТекущиеДанные.Номенклатура; Если НоваяСтрока Тогда Элемент.ТекущиеДанные.Номенклатура = Ссылка; КонецЕсли; КонецПроцедуры // МестаХраненияПриНачалеРедактирования() Процедура ПроверитьЕдиницуХраненияОстатков(Отказ) Если ЗначениеЗаполнено(ЕдиницаХраненияОстатков) Тогда Возврат; КонецЕсли; Ссылка = Справочники.ЕдиницыИзмерения.Выбрать; ВыборкаЕдиниц = Справочники.ЕдиницыИзмерения.Выбрать(, Ссылка); Если ВыборкаЕдиниц.Следующий() Тогда НайденнаяЕдиница = ВыборкаЕдиниц.Ссылка; Иначе НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); НайденнаяЕдиницаОбъект.Наименование = БазоваяЕдиницаИзмерения.Наименование; НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = БазоваяЕдиницаИзмерения; НайденнаяЕдиницаОбъект.Коэффициент = 1; НайденнаяЕдиницаОбъект.Владелец = Ссылка; Попытка НайденнаяЕдиницаОбъект.Записать(); Исключение Сообщить("Не удалось записать единицу хранения остатков: " + ОписаниеОшибки(), СтатусСообщения.Важное); Отказ = Истина; Возврат; КонецПопытки; НайденнаяЕдиница = НайденнаяЕдиницаОбъект.Ссылка; КонецЕсли; ЕдиницаХраненияОстатков = НайденнаяЕдиница; КонецПроцедуры // ПроверитьЕдиницуХраненияОстатков() |
|||
30
SeraFim
24.02.12
✎
10:20
|
тебе уже указали на ошибку:
НовыйЭлемент.ЕдиницаИзмеренияМест = БазоваяЕдиницаИзмерения; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницаХраненияОстатков; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыДляОтчетов; НовыйЭлемент.ЕдиницаИзмеренияМест = ЕдиницыМест; |
|||
31
Orthodoxxx_
Reprobate 24.02.12
✎
10:21
|
первое что было нужно сделал, в данных указал путь к БазоваяЕдиницаИзмерения
но по прежнему после нажатия выполнить в элементе номенклатуры на выставляются единицы автоматически |
|||
32
palpetrovich
24.02.12
✎
12:28
|
а так?
НовыйЭлемент.ЕдиницаИзмеренияМест = БазоваяЕдиницаИзмерения; НовыйЭлемент.ЕдиницаХраненияОстатков = ЕдиницаХраненияОстатков; НовыйЭлемент.ЕдиницыДляОтчетов = ЕдиницыДляОтчетов; НовыйЭлемент.ЕдиницыМест = ЕдиницыМест; чуть более тонкий намек :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |