Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Прайс-лист с фактическими ценами

Елена_В
читатель
офлайн
Дата регистрации: 26.10.2007
Сообщений: 611
Пост №1
 
04.05.2008 16:46

1С v7.7 Бух.учет.<br>Мне нужно получить прайс-лист на материалы, но чтоб цены были фактическими, а не учетными. Чтоб получить цены на определенную дату, использую бух.итоги и сумму делю на кол-во. Подскажите, плз, как быть, если на указанную дату по данному материалу итогов нет (кол-во=0), но цену при этом знать нужно

Alexandr VA
читатель
офлайн
Дата регистрации: 07.01.2007
Сообщений: 1666
Пост №2
 
04.05.2008 21:38

> 1С v7.7 Бух.учет.<br>> Мне нужно получить прайс-лист на материалы, но чтоб цены были <br><br>У материалов нет цены. Увы...

Елена_В
читатель
офлайн
Дата регистрации: 26.10.2007
Сообщений: 611
Пост №3
 
05.05.2008 08:25

но эти цены можно ведь рассчитать, как БИ10.СКД("С")/БИ10.СКД("К"). Или я не права?<br>

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №4
 
05.05.2008 09:18

БИ10.СКД("С")/БИ10.СКД("К") - так это и будет "учетная цена". А точнее, средняя балансовая стоимость одной единицы отдельно взятого объекта. Что вы подразумевайте под фактической ценой?

Елена_В
читатель
офлайн
Дата регистрации: 26.10.2007
Сообщений: 611
Пост №5
 
05.05.2008 09:46

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

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №6
 
07.05.2008 12:37

Так все верно. Если по данным учета нет ничего, что выводить то? У вас проблема получается не в программировании, а в постановке задачи. Что за цену вы собираетесь выводить в том случае, когда материала нет? Среднюю по всем прошедшим поступлениям? Цену, которая была в последнем поступлении? Цену, которая была в первом поступлении? Экстраполировать цену по имеющимся поступлениям? Максимальную или минимальную цену по всем поступлениям?<br>В общем, проблема в том, чтобы определиться с тем что мы хотим вообще. Определиться нужно и реализовывать. А как быть с материалами, которые в справочнике есть, но никогда не покупались? Тоже думайте

Елена_В
читатель
офлайн
Дата регистрации: 26.10.2007
Сообщений: 611
Пост №7
 
07.05.2008 14:56

нужна цена последнего поступления. Если материал в справочнике есть, но никогда не покупался, то его цена нас просто не интересует

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20950
Пост №8
 
07.05.2008 16:06

"А просто чисто случайно, это не задача из экзамена на 1С:Специалиста 7.7 Бух.учет? Что то такое похожее было у меня когда сдавал ;)!"

Елена_В
читатель
офлайн
Дата регистрации: 26.10.2007
Сообщений: 611
Пост №9
 
07.05.2008 16:12

нет, это не из экзамена. Эти цены мне нужны для составления отчетов управленческого учета

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №10
 
07.05.2008 16:27

"Ну вот,значит так и нужно делать. К сожалению, в 1С (7.7) нет возможности гибко и удобно обратиться к бухгалтерским итогам по указанным фильтрам и определить момент последнего движения, мало того, для выборки бухитогов нет возможности указать направление перебора результата. Поэтому придется изворачиваться как можем. Сейчас меня осудят любители оптимальных алгоритмов и станут говорить, что то, что я напишу, работает долго, криво и неправильно, но просто пусть предложат свой алгоритм в таком случае, может я тоже поучусь.<br>Итак, делаем:<br> НужнаяДата=ТекущаяДата();<br> НачалоВремен=Дата("01.01.1980");<br> СчетаУчета10=СоздатьОбъект("СписокЗначений");<br> <br> ПланСчетов = СоздатьОбъект("Счет");<br> ПланСчетов.ИспользоватьРодителя(СчетПоКоду(10));<br> ПланСчетов.ВыбратьСчета();<br> Пока ПланСчетов.ПолучитьСчет() = 1 Цикл<br> Если (Найти(ПланСчетов.Код, "10.7") = 1) ИЛИ (Найти(ПланСчетов.Код, "10.11") = 1) Тогда<br> Продолжить;<br> КонецЕсли;<br> СчетаУчета10.ДобавитьЗначение(ПланСчетов.ТекущийСчет());<br> КонецЦикла;<br> <br> БухИтоги=СоздатьОбъект("БухгалтерскиеИтоги");<br> БухИтоги.ИспользоватьСубконто(ВидыСубконто.Материалы,,1);<br> БухИтоги.ВыполнитьЗапрос(НужнаяДата,НужнаяДата,СчетаУчета10,,,,,5);<br> БухПоставка=СоздатьОбъект("БухгалтерскиеИтоги");<br> <br> Материалы=СоздатьОбъект("Справочник.Материалы");<br> Материалы.ВыбратьЭлементы(0);<br> Пока Материалы.ПолучитьЭлемент(1)=1 Цикл<br> Если Материалы.ЭтоГруппа()=0 Тогда<br> ТекМатериал=Материалы.ТекущийЭлемент();<br> Стоимость=0;<br> Количество=0;<br> НуженПоиск=0;<br> Если БухИтоги.ПолучитьСубконто(1,,ТекМатериал)=1 Тогда<br> Количество=БухИтоги.СКД("К");<br> Если Количество=0 Тогда<br> НуженПоискПоследнейПоставки=1;<br> Иначе<br> Стоимость=БухИтоги.СКД("С"); <br> КонецЕсли;<br> Иначе<br> НуженПоиск=1;<br> КонецЕсли;<br> Если НуженПоиск=1 Тогда<br> //ищем последнее списание и именно по нему определяем последнюю учетную стоимость, которая была когда то<br> НомерПопытки=0;<br> Пока 1=1 Цикл<br> НомерПопытки=НомерПопытки+1;<br> Если НомерПопытки=1 Тогда<br> НачДата=НачМесяца(НужнаяДата);<br> КонДата=НужнаяДата;<br> ИначеЕсли НомерПопытки<=3 Тогда<br> КонДата=НачДата-1;<br> НачДата=НачМесяца(КонДата);<br> ИначеЕсли НомерПопытки<=6 Тогда<br> КонДата=НачДата-1;<br> НачДата=ДобавитьМесяц(НачМесяца(КонДата),-2);<br> ИначеЕсли НомерПопытки=7 Тогда<br> КонДата=НачДата-1;<br> НачДата=НачалоВремен;<br> Иначе<br> Прервать;<br> КонецЕсли;<br> <br> БухПоставка.ИспользоватьСубконто(ВидыСубконто.Материалы,ТекМатериал,2);<br> БухПоставка.ВыполнитьЗапрос(НачДата,КонДата,СчетаУчета10,,,2,"Операция",5);<br> Если БухПоставка.ВыбратьПериоды(,2)=1 Тогда<br> Пока БухПоставка.ПолучитьПериод()=1 Цикл<br> СуммаПоОперации=БухПоставка.КО("С");<br> КоличествоПоОперации=БухПоставка.КО("К");<br> КонецЦикла;<br> Стоимость=СуммаПоОперации;<br> Количество=КоличествоПоОперации;<br> Прервать;<br> КонецЕсли;<br> КонецЦикла;<br> КонецЕсли;<br> <br> Если Количество>0 Тогда<br> Сообщить(Строка(ТекМатериал)+", количество = "+Строка(Количество)+", сумма = "+СокрЛП(Формат(Стоимость,"Ч15.2.'"))+", учетная цена = "+СокрЛП(Формат(Окр(Стоимость/Количество,2),"Ч15.2.'")));<br> КонецЕсли;<br> КонецЕсли;<br> КонецЦикла;<br>"

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация