Вопрос № 113562: Здравствуйте уважаемые эксперты. Мой вопрос в следующем. (версия 7.7 -бухгалтерия 7.70.026 - файл серверная)
Мой вопрос в следующем
Мне надо выбрать все существующие в базе проводки по определенному счету. При использовании команд
Выбра...Вопрос № 113591: Уважаемые эксперты!
Сделал обработку для переноса цен номенклатуры из одной базы в другую, но никак не могу записать реквизит "цена".
Пишу как в приведенном примере. Вижу что ТекущЗаписьСпр.Цена приняла значение 100 но в базу новое ...
Вопрос № 113.562
Здравствуйте уважаемые эксперты. Мой вопрос в следующем. (версия 7.7 -бухгалтерия 7.70.026 - файл серверная)
Мой вопрос в следующем
Мне надо выбрать все существующие в базе проводки по определенному счету. При использовании команд
ВыбратьОперацииСПроводками или воспользоваться Запросом через БухИтоги - там должна указываться "нижняя" дата - а я ее не знаю - как ее получить. (Команда БухИтоги.НачПериод() - дает дату начала периода расчитанных "текущих итогов - напимер начало "текущего" квартала)
Нужно указать дату первой операции в базе
либо вручную
НачДата = Дата(<Год>,<Месяц>,<Число>)
либо автоматически
см.приложение
Приложение:
--------- Отвечаю только на вопросы в тему.
Ответ отправил: Крюков Р.А. (статус: 2-ой класс)
Ответ отправлен: 12.12.2007, 12:25
Отвечает: Strawberry
Здравствуйте, Кильевич Наталья Ульяновна!
Просто дату начала запроса оставляете пустой и машина сама крутнет с первого движения.
--------- Мальчик-извращенец прочел деду Морозу с табуретки всего Пастернака!
Ответ отправил: Strawberry (статус: 10-ый класс)
Ответ отправлен: 12.12.2007, 13:08
Отвечает: Сергей Максименко [Elric]
Здравствуйте, Кильевич Наталья Ульяновна!
Strawberry прав, параметр НачДата необязателен (см. Синтакс-Помощник).
Однако есть одно предостережение. Если выборку делаете для того, чтобы изменить счет в проводках, то выборка все время будет сбиваться. В таком случае нужно либо сначала записать все ссылки в таблицу значений, а потом править, либо методом от Крюков Р.А. узнать граничную дату и построить карточку счета (вместо выборки операций с проводками).
--------- В творчестве рождается истина
Отвечает: Шахрайчук Владимир Анатольевич
Здравствуйте, Кильевич Наталья Ульяновна!
Смело ставьте начало периода дату регистрации фирмы или 01,01,1980
а конец КонецРассчитанногоПериодаБИ() - послеэтой даты проводки принципиально не существуют.
Уважаемые эксперты!
Сделал обработку для переноса цен номенклатуры из одной базы в другую, но никак не могу записать реквизит "цена".
Пишу как в приведенном примере. Вижу что ТекущЗаписьСпр.Цена приняла значение 100 но в базу новое значение не записывается. Видимо это связано с тем что это периодический реквизит?
Или так записывать цену нельзя а надо как-то по другому делать?
Подскажите пожалуйста!
Заранее Большое Спасибо.
Приложение:
Отправлен: 12.12.2007, 13:55
Вопрос задал: Andrew-dm (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Крюков Р.А.
Здравствуйте, Andrew-dm!
Предлагаю использовать метод "Установить(ДатаУст,ЗначениеНаДату)"
--------- Отвечаю только на вопросы в тему.
Ответ отправил: Крюков Р.А. (статус: 2-ой класс)
Ответ отправлен: 12.12.2007, 14:03 Оценка за ответ: 5
Отвечает: Vlad Skorochod
Здравствуйте, Andrew-dm!
Если это периодический реквизит, то необходимо указывать дату на которую будем записывать цену.
ТекущЗаписьСпр.Установить(Дата,Цена);
Дата - указываем которая необходима.
Ответ отправил: Vlad Skorochod (статус: 10-ый класс)
Ответ отправлен: 12.12.2007, 14:03 Оценка за ответ: 5
Отвечает: 4ToN
Здравствуйте, Andrew-dm!
Для периодических реквизитов справочника используются методы:
Получить(<Дата>)
Установить(<Дата>,<Значение>)
Подрбнее смотри в справке "Справочник -> Методы периодических реквизитов"
т.е. в твоем случае это будет так:
Приложение:
Ответ отправил: 4ToN (статус: 2-ой класс)
Ответ отправлен: 12.12.2007, 14:48 Оценка за ответ: 5
Отвечает: Астафьев Александр Николаевич
Здравствуйте, Andrew-dm! Хочу предложить немного другой вариант когда создаете переменную типа справочник, скорее всего это у Вас выглядело так: ТекущЗаписьСпр = создатьОбъект("Справочник.Цены);
после этого добавте строку:
ТекущЗаписьСпр.ИспользоватьДату(Дата("ЗдесьНужнаяДатаЦифрамиЧерезТочки"));
Теперь все периодические реквизиты вашего справочника стали непериодическими на время работы через переменную ТекущЗаписьСпр. У меня честно говоря были случаи когда метод Установить(<Дата>,<Значение>) не срабатывал хотя все было написано верно, правда это было до 25-го релиза 1С предприятия.
Ответ отправил: Астафьев Александр Николаевич (статус: 8-ой класс)
Ответ отправлен: 12.12.2007, 18:23 Оценка за ответ: 5
Отвечает: Владимир Лазурко [Vladal]
Здравствуйте, Andrew-dm!
Дополню ответы экспертов своим ответом на вопрос
Для чтения периодических реквизитов справочников Вы можете использовать метод Получить(Дата). Пример в Приложении (1).
А чтобы установить значение реквизита на определенную дату используйте метод Установить(Дата, Значение). Пример в приложении (2).
А чтобы не указывать каждому реквизиту дату (например, реквизитов много и чтоб не пропустить установку даты для какого-то одного и не наломать дров), испольуйте метод ИспользоватьДату(Дата). Пример в Приложении (3).
Успехов! С уважением, Владимир.
Приложение:
Ответ отправил: Владимир Лазурко [Vladal] (статус: 9-ый класс)
Ответ отправлен: 12.12.2007, 19:55 Оценка за ответ: 5