Имя: Пароль:
1C
1C 7.7
v7: Бух. Прайс-лист, проблема с ценами
,
0 wad_str
 
10.09.12
12:26
1С Бухгалтерия 7.7 релиз 537  конфигурация переписанная, платформа 027.
Добрый день! Пытаюсь составить отчет "прайс-лист" по остаткам на складе, столкнулся с проблемой вывода цены реализации в колонку. Цены в справочнике "номенклатура" указаны не как реквизит, а берутся из справочника "Цены", который является периодическим, в нем указано несколько типов цен, которые опять таки берутся из справочника "ТипыЦен", нужно отобрать только одну цену с определенным типом и вывести в печатную форму.

Привожу кусок модуля отчета, прошу указать на ошибку  и помочь решить ситуацию. Заранее благодарен. Спасибо.

Процедура Сформировать()
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   Ит = СоздатьОбъект("БухгалтерскиеИтоги");
   Номенкл = СоздатьОбъект("Справочник.Номенклатура");
   ЦенаОт = СоздатьОбъект("Справочник.Цены");
   ЦенаТип = СоздатьОбъект("Справочник.ТипыЦен");
   НоменклГруппа = СоздатьОбъект("Справочник.Номенклатура");
   Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура, , 1);
   Если Строка(ВыбСубконто1)<>"" Тогда
       Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ВыбСубконто1, 2);
   КонецЕсли;
   Таб.ВывестиСекцию("Заголовок");
   Если Скидка > 0 Тогда
       Таб.ВывестиСекцию("Скидка");
   КонецЕсли;
   Таб.ВывестиСекцию("Шапка");
   Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);
   Ит.ВыполнитьЗапрос(, ВыбКонПериода, "41.1",,, 1,, "К");
   
   А = 1;
   КолвоИтого = 0;
   СуммаПрихода = 0;
   СуммаРеализации = 0;
   Если Строка(ГруппаНоменклатуры) = "" Тогда
       Ит.ВыбратьСубконто(1);
   
       // Начало выбора позиции
       Пока Ит.ПолучитьСубконто(1) = 1 Цикл
       //Получение цены
           КолвоУп = "";
           НаименТовара = Ит.ПредставлениеСубконто(1);
           Номенкл.НайтиЭлемент(Ит.Субконто(1));
           ЦенаПрихода = Номенкл.Себестоимость;
           Цена = ЦенаОт;//.Получить(ВыбКонПериода);
           //Сообщить(Цена);
           ЦенаРеализации = Номенкл.Цена * ( 1 + Номенкл.СтавкаНДС.Получить(ВыбКонПериода).Ставка/100 ) * (1 - Скидка/100);
           Колво = Ит.СКД("К");
           КолвоИтого = КолвоИтого + Колво;
           СуммаПрихода = СуммаПрихода + Колво * ЦенаПрихода;
           СуммаРеализации = СуммаРеализации + Колво * ЦенаРеализации;
           Таб.ВывестиСекцию("Субконто1");
           А = А + 1;
       КонецЦикла;
1 fgaabbb
 
10.09.12
12:31
создать справочник "Цены", через использоватьВладельца(<Владелец>) привязать к номенклатуре, затем перебором выбрать цену с нужным типом цены, из нее .Получить(НужнаяДата)

как-то так...
2 fgaabbb
 
10.09.12
12:33
Номенкл.НайтиЭлемент(Ит.Субконто(1));
Цены.ИспользоватьВладельца(Номенкл.ТекущийЭлемент());
Цены.ВыбратьЭлементы();
Пока Цены.ПолучитьЭлемент()=1 Цикл
Если Цены.ТипЦен = НужныйТебеТипЦен тогда
Цена = Цены.Цена.Получить(ДатаК);
КонецЕсли;
КонецЦикла;
3 VladZ
 
10.09.12
12:33
(0) Посмотри, как сделано в ТИСе.
4 GreyK
 
10.09.12
12:37
(0) В глобальнике бухии есть такая функция:
Функция глВернутьЦену(Номенклатура, ТипЦены =0, ДатаЦены = 0, ЦенаЦены = 0,ВалЦены = 0,НайденнаяЦена = 0) Экспорт
5 wad_str
 
10.09.12
12:42
Для   GreyK а можно подробнее про эту функцию?
6 GreyK
 
10.09.12
12:46
(5) Посмотри в глобальном модуле там всё есть. Примерно так:
//******************************************************************************
// глВернутьЦену(Номенклатура, ТипЦены, ДатаЦены, ЦенаЦены, ВалЦены, НайденнаяЦена)
//
// Параметры:
//  Номенклатура  - элемент справочника "Номенклатура"
//  ТипЦены       - элемент справочника "ТипыЦен"
//  ДатаЦены      - дата, на которую надо получить цену
//  ЦенаЦены      - переменная, которую надо заполнитиь значением (число) полученной цены
//  ВалЦены       - переменная, которую надо заполнитиь значением валюты, в которой выражена цена
//  НайденнаяЦена - переменная, которую надо заполнить найденным элементом справочника цен
//
// Возвращаемое значение:
//  1 - если есть такая цена, пераметры цены заполнены
//  0 - нет такой цены
// -1 - есть только цены, помеченные на удаление
//
// Описание:
//  Формирует ценовые характеристики номенклатурной единицы по заданному типу цен.
//
Функция глВернутьЦену(Номенклатура, ТипЦены =0, ДатаЦены = 0, ЦенаЦены = 0,ВалЦены = 0,НайденнаяЦена = 0) Экспорт
7 snegovik
 
10.09.12
12:47
(4) Функция глПолучитьЦену , пожалуй, лучше подходит.
8 GreyK
 
10.09.12
12:49
(7) Посмотри откуда она берет цену

Функция глПолучитьЦену(Док = "", Номенклатура, Тип = "", НаДату,Валюта=0, Курс=0) Экспорт
   Перем ЦенаЦены, ВалЦены;
   
   ЦенаЦены    = 0;
   Если Константа.ИспользоватьТипыЦен = Нет Тогда
       Если ПустоеЗначение(Док) = 0 Тогда
           Если Док.Вид() = "ПоступлениеТоваров" Тогда
               ЦенаЦены = глСуммаДокумента(Док, Номенклатура, Номенклатура.Себестоимость);
               Возврат ЦенаЦены;
           КонецЕсли;
       КонецЕсли;
   КонецЕсли;
   
   Если глВернутьЦену(Номенклатура, Тип, НаДату, ЦенаЦены, ВалЦены) = 1 Тогда
       ЦенаЦены    = глПересчет(ЦенаЦены, ВалЦены, ?(ПустоеЗначение(ВалЦены) = 0,НаДату,1), Валюта, ?(ПустоеЗначение(Курс) = 1, ?(ПустоеЗначение(Валюта) = 0,НаДату,1), Курс));
   КонецЕсли;
9 snegovik
 
10.09.12
12:52
(8) Мне описание функции больше понравилось:
// Описание:
//  Функция возвращает цену номенклатуры в указанном типе цен Тип, на дату НаДату,
//  пересчитанную в валюту Валюта по курсу Курс

------
внутрь сильно не полез)
10 wad_str
 
10.09.12
13:06
Всем огромное спасибо, у меня получилось!!!!! Есть на форуме функция "поблагодарить"?
11 CepeLLlka
 
10.09.12
13:10
(10)Есть.. найди чела по нику - Ёпрст4, у него в инфе есть кошельки.. скинь желаемую сумму.
12 wad_str
 
14.09.12
15:13
1С Бухгалтерия 7.7 релиз 542  конфигурация переписанная, платформа 027.
Добрый день!
Возникла проблема (от незнания скорее всего...)

Вот суть:
не найду где в конфигурации посмотреть такую штуку.
в плане счетов счет 68.3 - Акцизы
У него на 1 субконто стоит ВидСубконто - ВидыПлатежейВБюджет
когда оборотку по счету делаешь там можно выбрать субконто1 НалогНачисл./уплач.  - а где вот в конфе его найти -всё облазил -нету...... КАк он правильно называется????? мне в модуле документа вставить надо типа

Операция.НоваяПроводка();
 Операция.СодержаниеПроводки = "Начислен акциз на товар";
 Операция.Дебет.Счет = Сч76_5;
 Операция.Дебет.Контрагенты  = Контрагент;
 Операция.Дебет.Договоры = Договор;
 Операция.Кредит.Счет = Сч68_3;
 Операция.Кредит.ВидыПлатежейВБюджет = Перечисление.ВидыПлатежейВБюджет.НалогНачисленный (вот тут затык);
 Операция.Сумма = СуммаАкциз;  

Если кто знает  - подскажите пожалуйста!!!! Заранее спасибо!
13 chief accountant
 
14.09.12
15:16
Перечисление.ВидыПлатежейВБюджет.Налог
14 wad_str
 
14.09.12
15:26
Не я определенно отупел к концу недели! Спасибо огромное за помощь! Всё заработало!
15 wad_str
 
05.10.12
12:50
Добрый день!
1С бухгалтерия 7.7 релиз 537 платформа 027.
С одной из баз данных произошло следующее:
при отмене проведения документа вылетает ошибка
код -4 таблица 1SSBSEL
Общая ошибка ввода-вывода
Читал на форумах   -пишут предельный объем достигнут, но у меня таблица всего 14,5 Мб весит,
атрибутов для чтения тоже нет, стандартное тестирование исправление  (выбирал первые 2 пункта) не помогло...
Документ провести можно а вот отменить проведение уже никак? Заранее благодарен за инфу, что это такое может быть.....
16 1Сергей
 
05.10.12
12:56
(15) для начала реиндекс
17 BlackSeaCat
 
05.10.12
12:56
(15) "выбирал первые 2 пункта" - а остальные религия не позволяет?
18 wad_str
 
05.10.12
12:58
проверял физ целостность и реиндексацию сделал. думал что это необходимый минимум.
19 1Сергей
 
05.10.12
13:01
(18) ошибка возникает при отмене проведения конкретного документа или любого имеющего проводки?
20 mista2012-09-11
 
05.10.12
13:07
Цена = глПолучитьЦену(Контекст,Товар,ТипЦен,ДатаДок,"");
21 mista2012-09-11
 
05.10.12
13:08
кури функцию глобального модуля. и не надо изобретать велосипед.
22 BlackSeaCat
 
05.10.12
13:15
(20) (21) Это ответ на первый вопрос ветки, а автор мучается уже с третьим.
23 wad_str
 
05.10.12
13:30
похоже что при отмене проведения любого документа - во всяком случае из журнала товары, реализация
24 mista2012-09-11
 
05.10.12
13:34
снеси индексы : выгони всех из программы, сделай архив(выгрузку), зайди в каталог у удали все индексы
25 wad_str
 
05.10.12
13:35
пробовал..... :-((((
26 mista2012-09-11
 
05.10.12
13:40
теперь снова загрузи базу из архива
27 mista2012-09-11
 
05.10.12
13:41
тогда возьми чистую базу и посмотри дбфвьювером структуру и содержимое полей в той и  своей дбфке. найди различия...
28 mista2012-09-11
 
05.10.12
13:41
...и исправь
29 wad_str
 
05.10.12
13:42
ХОрошо попытаюсь..... спасибо. Если еще есть варианты -буду признателен услышать.
30 mista2012-09-11
 
05.10.12
13:42
обычно слетает какой нить столбец (поле) или искажается инфа  в нем - происходит сцепка из соседнего поля или даже из ряда соседних полей - так обычно  вирусняк гадит.
31 mista2012-09-11
 
05.10.12
13:42
или выключение компа во время работы с базой
32 mista2012-09-11
 
05.10.12
13:44
у меня ураньше такое часто у клиентов наблюдалось - у нас то такого нету - антивирь касперыча 6 версии рулит! Да и вирусняк на компах по регламенту два раза в неделю гоняем. Ну и Скуль.
33 wad_str
 
05.10.12
13:45
таблеткой cure it  прогнал сервер - вроде ничего не нашлось. у нас э/энергию отключали, но ИБП корректно сервер положил, если кто из юзарей не закрыл сессию только.....
34 BlackSeaCat
 
05.10.12
13:48
(33) Архивируй базу, выкладывай на обменник, ссылку кому-нибудь лично (кто возьмется) или на форум, если не страшно.

Спец(ы) посмотрят и скажут, что случилось, во втором варианте, возможно, даже забесплатно - мающихся от безделья тут предостаточно. :-)
35 wad_str
 
05.10.12
13:53
спсибо! Архив полный сделать? Криминала там нет .
36 1Сергей
 
05.10.12
14:03
(35) а посмотри ка, нет ли документов без даты в базе?
37 wad_str
 
05.10.12
14:04
Выкладываю файл выгрузки из базы (проблема в предыдущих сообщениях, если кто поможет - буду сильно благодарен!
38 wad_str
 
05.10.12
14:05
оппа а как файл прицепить к сообщению?
39 BlackSeaCat
 
05.10.12
14:05
(35) Достаточно штатно конфигуратором "Сохранить данные"
40 BlackSeaCat
 
05.10.12
14:06
(38) Никак, выкладывай, например, на rusfolder.com, а сюда - ссылку.
41 wad_str
 
05.10.12
14:07
понял.
42 wad_str
 
05.10.12
14:32
совершил еще один тур шаманских танцев  с выгрузкой, снесением индексов, загрузкой, исправлением по всем пунктам, выдала мне сообщение о изменении времени документа и ЗАРАБОТАЛА!!!!!
Всем кто принял участие - Огромное спасибо!!!!!
43 wad_str
 
15.10.12
07:54
Добрый день!
1с Бухгалтерия 7.7  конфигурация измененная, релиз 537, Платформа 027

Может кто сталкивался с подобной проблемой, лично я мучаюсь уже второй квартал подряд.
Устанавливаю пакет регламентированной отчетности, бухгалтер пытается заполнить отчет
Отчеты в фонды -
Расчетная ведомость по средствам ФСС РФ (Форма-4 ФСС РФ)
если в таблицах присутствует кнопка "ЗАПОЛНИТЬ"  при нажатии выдается ощибка:

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

Пытался на копиях базы "поднимать" релиз до текущего (542)  - никаких изменений.
Обновление ИБ провожу частично, т.к. конфигурация очень сильно переписана.
Хотелось бы знать какая часть отвечает именно за этот отчет?
С остальным проблем нет.  И еще. Есть база релиз 525 ( давно не обновлялась) тоже переписанная
но там такой прблемы нет. сравнение ничего не дает.
Заранее благодарен за любую информацию и помощь. Спасибо.
44 Мимохожий Однако
 
15.10.12
08:04
Поменяй константу на последнюю. Терять всё равно нечего.
45 wad_str
 
15.10.12
08:05
Простите какую константу?
46 Мимохожий Однако
 
15.10.12
08:07
Значение константы номер релиза.
47 wad_str
 
15.10.12
08:08
хмм интересно... попытаюсь. Отпишусь если получится.
48 wad_str
 
15.10.12
08:44
не так то это просто... Тем более что после пробного обновления релиза номер везде последний стоит (на тестовой базе) 7.70.542 ......

не вариант.
49 wad_str
 
15.10.12
09:07
Кажется я "нарыл" причину ошибки.
ССылка дается при проверке значения в справочнике Сотрудник поля "Долгосрочный договор с иностранцем" если значение =0 тогда прерывается формирование отчета и выдается сообщение об ошибке.... Вот только как исправить положение еще не дошло пока до меня.
50 ТакВотЖе
 
15.10.12
09:21
добавь этот реквизит в справочник "Сотрудники"