Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Регистр остатков 1с 7.7
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
Kutuzov
Есть самописная конфигурация. В ней есть регистр остатков, в который пришлось добавить измерение курс валюты. Необходимо заполнить из документа регистратора этот курс.
Как можно Эти данные туда вставить без перепроведения базы? А то перепроведение просто неадекватно. 64000000.gif
XBrut
есть технология вбрасывания значений в регистр через sql . помню, что когда то делал для пробы. но уж не помню как именно. смотрите в тырнетах
Fynjy
Цитата(Kutuzov @ 07.02.14, 10:33) необходимо зарегистрироваться для просмотра ссылки
Есть самописная конфигурация. В ней есть регистр остатков, в который пришлось добавить измерение курс валюты. Необходимо заполнить из документа регистратора этот курс.
Как можно Эти данные туда вставить без перепроведения базы? А то перепроведение просто неадекватно. 64000000.gif

Нельзя, но никто не мешает ручками заполнить дбф или SQL таблицу гуидом ссылки ...
XBrut
....вспоминаю, шо там типа пишешь в поле таблицы регистра идентификатор объекта, а потом мол точку актуальности туда-сюда шевелишь, чтобы итоги сами пересчитались.
Домовик
а задача как звучит? может можно без этого измерения обойтись? по другому решить?

Kutuzov
Цитата(Домовик @ 07.02.14, 11:52) необходимо зарегистрироваться для просмотра ссылки
а задача как звучит? может можно без этого измерения обойтись? по другому решить?


Да оно бы получилось и без регистра если бы там было все по нормальному написано. а так там курс и в таб части тоже встречается. и привязка к строкам также изначально отсутствует
Короче, база называется - 32542620.gif
Домовик
стоп. измерение - курс валюты???


об ясните еще раз задачу, не понятно.
alex040269
Может курс в реквизит?
XBrut
курс как измерение в регистр взаиморасчетов. нормально для вычисления потерь от курсовых разниц. я такое делал.


можно и штатными методами. перехватить начало проведения, забирать движения в таблицу значений, очищать движения регистра, добавлять курс и возвращать в регистр.
и всё равно тогда, что там за конфигурация.
alex040269
Цитата(XBrut @ 07.02.14, 22:48) необходимо зарегистрироваться для просмотра ссылки
курс как измерение в регистр взаиморасчетов. нормально для вычисления потерь от курсовых разниц. я такое делал.

т.е. можно записать в один день по одному набору измерений (до добавления курса) несколько записей с разным курсом?


точнее не записать, а получить итоги по разному курсу в один день?
это нужно если каждого товара или клиента свой курс!
Домовик
если не затрагивать вопрос, какое же будет измерение,то

то зачем трогать документы, к тому же те, которые к текущим остаткам не имеют отношения..

к примеру, на тридцать первое декарбря провести специальный документ, который пройдет по все остаткам, которые есть, сделает расход, и сразу же приход, только уже со значением измерения. ну и дата запрета редактирования.


К тому же, добавление измерения иногда означает дробление одной записи на несколько записей. Иногда да, иногда нет. но нужно учесть.





Цитата(XBrut @ 07.02.14, 18:48) необходимо зарегистрироваться для просмотра ссылки
можно и штатными методами. перехватить начало проведения, забирать движения в таблицу значений, очищать движения регистра, добавлять курс и возвращать в регистр.

ух ты, а как это. без перепроведения можно так сделать?
XBrut
не. с перепроведением. просто вставить при начале проведения свою процедуру, а тот весь бред не трогать и не исполнять его.

Цитата
это нужно если каждого товара или клиента свой курс!

я не знаю что у ТС, а у меня был регистр взаиморасчетов. и я при продажах фиксировал в регистре курс продажи. а при оплатах сравнивал с курсом оплаты. , вычислял убыток-доход и заносил в ресурс.
Тогда в отчете можно выкупить , попал или поднялся владелец фирмы на курсе :)
делал для России, т.к. там курс плавает туда-сюда постоянно. не. ну конечно можно было бы курс в измерение не заносить, а добывать его из документа продажи, но мне что-то помешало - непомню.
alex040269
Цитата(Домовик @ 08.02.14, 8:22) необходимо зарегистрироваться для просмотра ссылки
Цитата(XBrut @ 07.02.14, 18:48) *
можно и штатными методами. перехватить начало проведения, забирать движения в таблицу значений, очищать движения регистра, добавлять курс и возвращать в регистр.

Цитата(Домовик @ 08.02.14, 8:22) необходимо зарегистрироваться для просмотра ссылки
ух ты, а как это. без перепроведения можно так сделать?

Я думаю XBrut имел ввиду при проведении документа.
Домовик
я так понимаю решение Xbrut:

1.коментируется на время код создания движений в модуле
2. считываются движения документа которые есть в таблицу значений
3. дописывается код движений из таблицы плюс вставляется значение измерения
4. проводятся документы
5. старый код движений снимается с комментариев и изменяется с учетом нового измерения.

Так? Тогда красиво, красиво.
XBrut
ну да. и еще в старый алгоритм же ж валюту не забыть пририсовать.
...еще не забыть снять галку "автоудаление движений" в документе и не забыть вовремя очищать регистр.
П.С.
трюк известен давным-давно и придумал явно что не я :)
Fynjy
Вот вы извращенцы ...
Делов то ... В табличку напрямую записать данные и вполнить пересчет итогов ...
Домовик
)
"правление пошло на поводу у шизофренички!"

та мы просто способы разные обсуждаем.
к тому же, добавление еще одного измерения иногда может требовать замены одной записи на две и более.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.