Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Обращение к реквизитам Регистра Сведений 2 страниц V  < 1 2          
Гущин Артём Подменю пользователя
сообщение 21.03.13, 10:14
Сообщение #21

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(logist @ 21.03.13, 10:04) *
Все этого хотят, регистры они такие smile.gif Но я так и не услышал ответ на свой последний вопрос, который связан с Вашим вопросом в сообщении #12


Я хочу узнать, можно ли подставить в код:
&НаКлиентеСервере
    Процедура РасчетФСПРилляПриИзменении(Элемент)
        СтрокаРасчетФСП = Элементы.РасчетФСП.ТекущиеДанные;
        СтрокаЗемПлощадиПредприятия = Элементы.ЗемПлощадиПредприятия.ТекущиеДанные;
        СтрокаРасчетФСП.Рилля = СтрокаЗемПлощадиПредприятия.Рилля * 9/100;
    КонецПроцедуры


заменить строку:
СтрокаРасчетФСП.Рилля = СтрокаЗемПлощадиПредприятия.Рилля * 9/100;


на вот эту:
СтрокаРасчетФСП.Рилля = СтрокаЗемПлощадиПредприятия.Рилля * ПрочитатьРесурсСтавкаФСП(Элемент3);


где:
Элемент3
- это значения, которыя я буду хранить в ресурсе РегистраСведений.

logist Подменю пользователя
сообщение 21.03.13, 10:30
Сообщение #22

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Блаблабла",    БазаНалогооблажения); // значение перечисления можно подставить тут или передать в вызове процедуры
"ВЫБРАТЬ
|    СтавкиНалогаФСП.СтавкаФСП
|ИЗ
|    РегистрСведений.СтавкиНалогаФСП КАК СтавкиНалогаФСП
|ГДЕ
|    СтавкиНалогаФСП.БазаНалогооблажения = &Блаблабла";

Результат = Запрос.Выполнить().Выгрузить();
Возврат Результат.ВыгрузитьКолонку("СтавкаФСП");


В этом случае вы получите массив результатов, и дальше можете использовать:
ВозвращенныйМассив[0] // для первого элемента, пример
ВозвращенныйМассив[2] // для третьего элемента, пример


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

Цитата(Гущин Артём @ 21.03.13, 10:14) *
где:
Элемент3
- это значения, которыя я буду хранить в ресурсе РегистраСведений.

Функция "ПрочитатьРесурсСтавкаФСП" уже вернет значение согласно параметрам запроса, в скобках передаются параметры для выполнения функции, а не желаемый результат.

Сообщение отредактировал logist - 21.03.13, 10:28


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Гущин Артём Подменю пользователя
сообщение 21.03.13, 16:11
Сообщение #23

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Финансирование сайта осуществляется путём пожертвований или из каких-либо других источников?

Гущин Артём Подменю пользователя
сообщение 21.03.13, 17:25
Сообщение #24

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(logist @ 21.03.13, 10:30) *
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Блаблабла",    БазаНалогооблажения); // значение перечисления можно подставить тут или передать в вызове процедуры
"ВЫБРАТЬ
|    СтавкиНалогаФСП.СтавкаФСП
|ИЗ
|    РегистрСведений.СтавкиНалогаФСП КАК СтавкиНалогаФСП
|ГДЕ
|    СтавкиНалогаФСП.БазаНалогооблажения = &Блаблабла";

Результат = Запрос.Выполнить().Выгрузить();
Возврат Результат.ВыгрузитьКолонку("СтавкаФСП");


В этом случае вы получите массив результатов, и дальше можете использовать:
ВозвращенныйМассив[0] // для первого элемента, пример
ВозвращенныйМассив[2] // для третьего элемента, пример


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


Функция "ПрочитатьРесурсСтавкаФСП" уже вернет значение согласно параметрам запроса, в скобках передаются параметры для выполнения функции, а не желаемый результат.



    &НаСервере
    Функция ПрочитатьРесурсСтавкаФСП()
        
        Запрос = Новый Запрос;
        Запрос.УстановитьПараметр("БазаНалогооблажения", БазаНалогооблажения); // значение перечисления можно подставить тут или передать в вызове процедуры
        "ВЫБРАТЬ
        |    СтавкиНалогаФСП.СтавкаФСП
        |ИЗ
        |    РегистрСведений.СтавкиНалогаФСП КАК СтавкиНалогаФСП
        |ГДЕ
        |    СтавкиНалогаФСП.БазаНалогооблажения = &БазаНалогооблажения";
        
        Результат = Запрос.Выполнить().Выгрузить();
        Возврат Результат.ВыгрузитьКолонку("СтавкаФСП");
        
    КонецФункции


Что-то в этом роде?

Гущин Артём Подменю пользователя
сообщение 21.03.13, 19:06
Сообщение #25

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Вот так наверное:

    &НаКлиентСервере
    Функция ПрочитатьРесурсСтавкаФСП()
        
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    СтавкиНалогаФСП.СтавкаФСП
        |ИЗ
        |    РегистрСведений.СтавкиНалогаФСП КАК СтавкиНалогаФСП
        |ГДЕ
        |    СтавкиНалогаФСП.БазаНалогооблажения = &База";
        Запрос.УстановитьПараметр("База", База);      
        Результат = Запрос.Выполнить().Выгрузить();
        Возврат Результат.ВыгрузитьКолонку("СтавкаФСП");
        
    КонецФункции

Vofka Подменю пользователя
сообщение 21.03.13, 20:34
Сообщение #26

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13956
Из: Киев
Спасибо сказали: 4523 раз
Рейтинг: 3646.4

Цитата(Гущин Артём @ 21.03.13, 16:11) *
Финансирование сайта осуществляется путём пожертвований или из каких-либо других источников?

Финансирование сайта осуществляется с кармана администрации. Вот вы видите рекламу на форуме - она тут висит не потому, что я, например, или кто-то другой из администрации косит на этом бабло, а затем, чтобы оплачивать те услуги, которые нужны для функционирования сайта. + любой желающий, само собой, может кинуть "пару рэ", если есть желание, это не запрещается (вот, кстати, даже тему когда-то открывали). А вообще, подобным вопросам, в технических ветках не место. Есть раздел про обсуждении сайта, так что на будущее, подобного рода вопросы можете задавать там.

Сообщение отредактировал Vofka - 21.03.13, 20:58

pablo Подменю пользователя
сообщение 22.03.13, 8:12
Сообщение #27

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

Гущин Артём, Вы мой пост вчерашний не читали?


Signature
Правильно поставленный вопрос содержит до 90% ответа.

Гущин Артём Подменю пользователя
сообщение 22.03.13, 12:53
Сообщение #28

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(pablo @ 22.03.13, 8:12) *
Гущин Артём, Вы мой пост вчерашний не читали?


читал. В регистре сведений есть изменения. Заносятся ставки налога в Измерение "СтавкиФСП" раз в год.

pablo Подменю пользователя
сообщение 22.03.13, 12:56
Сообщение #29

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

А Вам каждый раз нужно получать ставкуФСП за все годы?


Signature
Правильно поставленный вопрос содержит до 90% ответа.

logist Подменю пользователя
сообщение 22.03.13, 12:59
Сообщение #30

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Гущин Артём @ 22.03.13, 12:53) *
раз в год.

Вам стоит сделать регистр периодичным, и потом получать срезпоследних на дату документа.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Гущин Артём Подменю пользователя
сообщение 22.03.13, 13:22
Сообщение #31

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(pablo @ 22.03.13, 12:56) *
А Вам каждый раз нужно получать ставкуФСП за все годы?



Получать только те ставки, которые введены последними.

pablo Подменю пользователя
сообщение 22.03.13, 13:37
Сообщение #32

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

Цитата
введены последними.

То есть, если позавчера ввели ставку за 2013 год, а вчера - за 2012, то сегодня функция должна вернуть ставку за 2012 год?

Гущин Артём, Что-то у меня все больше и больше растет желание отправить Вас прочитать соответствующую литературу. Того же Радченко, к примеру.


Signature
Правильно поставленный вопрос содержит до 90% ответа.

Гущин Артём Подменю пользователя
сообщение 22.03.13, 13:43
Сообщение #33

Общительный
**
Группа: Пользователи
Сообщений: 49
Из: Сумы
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(pablo @ 22.03.13, 13:37) *
То есть, если позавчера ввели ставку за 2013 год, а вчера - за 2012, то сегодня функция должна вернуть ставку за 2012 год?

Гущин Артём, Что-то у меня все больше и больше растет желание отправить Вас прочитать соответствующую литературу. Того же Радченко, к примеру.



Радченко читал.

То есть, если позавчера ввели ставку за 2013 год, а вчера - за 2012, то сегодня функция должна вернуть ставку за 2012 год?
Нет, вернуть 2013 (последний) год.

pablo Подменю пользователя
сообщение 22.03.13, 14:09
Сообщение #34

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

&НаСервере
Функция ПрочитатьРесурсСтавкаФСП(База)
        
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    СтавкиНалогаФСП.СтавкаФСП
        |ИЗ
        |    РегистрСведений.СтавкиНалогаФСП.СрезПоследних(&Период,БазаНалогооблажения=&База) КАК СтавкиНалогаФСП ";
    Запрос.УстановитьПараметр("База",База);
    Запрос.УстановитьПараметр("Период",ТекущаяДата());
    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();

    если ВыборкаДетальныеЗаписи.Следующий() тогда
     Возврат ВыборкаДетальныеЗаписи.СтавкаФСП;
   иначе
     возврат 0;
    КонецЕсли;      

КонецФункции


Signature
Правильно поставленный вопрос содержит до 90% ответа.

logist Подменю пользователя
сообщение 22.03.13, 15:18
Сообщение #35

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

   Запрос.УстановитьПараметр("Период",ТекущаяДата());

Нужна дата документа, а не текущая.

upd:
Ну и лучше &НаСервереБезКонтекста


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


2 страниц V  < 1 2
Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 30.05.24, 6:52
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!