PDA

Просмотр полной версии : 1C V7.7 Торговля и склад 9.2 цены на товары



kidus
09.09.2010, 18:36
Всем доброго времени суток. Ищу помощи.
Ситуация вкратце.
Позвали на работу сисадмином. Предыдущего предыдущего выгнали. (алкоголь).
С компами-то у меня проблем нет, а вот с 1С.
Стоит V7.7 Торговля и склад 9.2.
С этой вообще не работал. Книжки нету.
Проблема следуящая.
Происходит поступление товара.
Работник приходует его, вбивает закупочную и розничную цену.
Где потом, кроме приходной накладной можно посмотреть цену товара?
Ни я найти не могу, ни работник показать не смогла.
Для чего надо!!!
При последующем поступлении аналогичного товара (возможно поступившего по другой цене) работник при оприходовании должен знать текущую розничную цену.
В идеале - чтоб текущая розничная цена отображалась в табличной части приходной накладной. Но на печать, не выводилась.
Кто-нибудь может помочь?

gfulk
09.09.2010, 22:27
1. Справочники/номенклатура. Выбираете необходимый товар, щелкаете внизу кнопку Справочники/цены
2. Формируете прайс
3. Еще 100500 способов

По поводу текущей розничной цены в отдельной колонке приходной накладной. Сделать это очень просто, однако с Вашим уровнем подготовки я бы посоветовал пригласить знающего человека. Однако, вот:
0. СДЕЛАЙТЕ РЕЗЕРВНУЮ КОПИЮ БАЗЫ
1. Открываете конфигуратор.
2. Меню Конфигурация/открыть конфигурацию
3. Находите Документы/ПриходнаяНакладная
4. Щелкаете Правой кнопкой мыши - форма
5. Вставить/текст. Щелкаете в любом месте табличной части. В конце ТЧ создается новый столбик. Выделяете его, щелкаете правой кнопкой мыши - свойства
6. В окне задаете любой заголовок. На странице Дополнительно в Формуле пишите "ПолучитьРознЦену()" (без кавычек)
7. Переходите на закладку "Модуль"
8. Идете в самый низ, находите последнее слово КонецПроцедуры или КонецФункции
9. После него добавляете примерно такой текст:

Функция ПолучитьРознЦену()
Спр=СоздатьОБъект("Справочник.Цены");
Спр.ИспользоватьВладельца( Номенклатура);
Спр.ИспользоватьДату(Текущ аяДата());
Если Спр.НайтиПоРеквизиту("ТипЦен",Константа.РозничныйТипЦен )=1 Тогда
Возврат Спр.Цена;
КонецЕсли;
Возврат "";
КонецФункции

10. Меню Файл/сохранить.
11. В константе "Розничный тип цен" должна быть указана розничная цена
12. Профит!

Добавлено через 2 минуты 44 секунды
После обновления конфигурации Ваши изменения могут пропасть

kidus
11.09.2010, 00:10
Да, действительно, с "семёркой" не работал. Больше года на 8-ке, свинокомплекс от Матрицы.
Больших проблем не возникает.
А тут!!!!
Получается, что помимо ввода цены в приходную накладную надо ещё и забить цену в справочник "Цены"?
Товар приходуем документом "Поступление в розницу (купля - продажа)".
Я-то по простоте душевной думал, что это должно происходить в автомате.
А если вручную, то вопросов нет.

Добавлено через 7 часов 10 минут 19 секунд
Чтоб отбражались введённые в документ "Поступление в розницу (купля - продажа)" цены, достаточно нажать кнопку "действия" - > Обновить цены и выбать какие конкретно надо обновить.

gfulk, сделал как ты сказал.
При открытии документа программа пишет:
Если Спр.НайтиПоРеквизиту("ТипЦен",Константа.РозничныйТипЦен )=1 Тогда
{Документ.ПоступлениеТМЦРо зница.Форма.Модуль(2272)}: Недостаточное число параметров передано при вызове функции/процедуры объекта

может поможешь?

Alexerg
12.09.2010, 00:08
При открытии документа программа пишет:
Если Спр.НайтиПоРеквизиту("ТипЦен",Константа.РозничныйТ ипЦен)=1 Тогда
{Документ.ПоступлениеТМЦРо зница.Форма.Модуль(2272) }: Недостаточное число параметров передано при вызове функции/процедуры объекта

Добавь 0: Если Спр.НайтиПоРеквизиту("ТипЦен",Константа.РозничныйТ ипЦен, 0)=1 Тогда

vmil
12.09.2010, 07:31
В модуле документа "Поступление в розницу (купля - продажа)". допиши вот это
и тогда при проведении документа цена будет записана в справочник
глПриПроведении(Контекст, ВидыДвижений);

// ***************************************
СпрЦены = СоздатьОбъект("Справочник.Цены");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если ПустоеЗначение(Номенклату� �а) = 1 Тогда
Продолжить;
КонецЕсли;
//УстановитьРеквизитСправоч ника(Номенклатура, "Фирма", Фирма, ДатаДок);
Если НЕ(РозничнаяЦена = 0) Тогда
СпрЦены.ИспользоватьВладе� �ьца(Номенклатура);
Если СпрЦены.НайтиПоРеквизиту("ТипЦен", Константа.РозничныйТипЦен, 0) = 0 Тогда
СпрЦены.Новый();
СпрЦены.Валюта = глРубли;
СпрЦены.ТипЦен = Константа.РозничныйТипЦен;
СпрЦены.Записать();
КонецЕсли;
УстановитьРеквизитСправоч ника(СпрЦены.ТекущийЭлемен т(), "Единица", Номенклатура.БазоваяЕдини� �а, ДатаДок);
УстановитьРеквизитСправоч ника(СпрЦены.ТекущийЭлемен т(), "Цена", РозничнаяЦена, ДатаДок);

Если (ПустоеЗначение(ТипЦен) = 0) и (Цена <> 0) Тогда
Если СпрЦены.НайтиПоРеквизиту("ТипЦен", ТипЦен, 0) = 0 Тогда
СпрЦены.Новый();
СпрЦены.Валюта = глРубли;
СпрЦены.ТипЦен = ТипЦен;
СпрЦены.Записать();
КонецЕсли;
УстановитьРеквизитСправоч ника(СпрЦены.ТекущийЭлемен т(), "Единица", Номенклатура.БазоваяЕдини� �а, ДатаДок);
УстановитьРеквизитСправоч ника(СпрЦены.ТекущийЭлемен т(), "Цена", Цена, ДатаДок);
КонецЕсли;
КонецЕсли;

КонецЦикла;
// **********************************

КонецПроцедуры //ОбработкаПроведения()

kidus
13.09.2010, 21:26
Alexerg, Сработало!!!!!
Какие вы УМНЫЕ!!!!!!
vmil, пока не работает...
Ругается на запись (УстановитьРеквизитСправо� �ника) говорит "Не найдено"
Все 4 раза.

gfulk
13.09.2010, 21:49
Не рекомендую делать так, как предлагает vmil. По опыту могу сказать, что очень часто совсем не требуется, чтобы при проведении документа обновлялись цены. Если юзверь хочет - пусть ручками скажет, что ему надо. А то, если цены будут каждый день неконтролируемо меняться, могут произойти неприятные вещи

kidus
14.09.2010, 07:32
Ладно... учту.

vmil
15.09.2010, 17:18
vmil, пока не работает...
Ругается на запись (УстановитьРеквизитСправо� �ника) говорит "Не найдено"
Все 4 раза.
Эта строчка нужна для того если фирм несколько (больше однной) если фирма одна то просто закоментируйте сточку вот так.
//УстановитьРеквизитСправоч ника(Номенклатура, "Фирма", Фирма, ДатаДок);

Не рекомендую делать так, как предлагает vmil. По опыту могу сказать, что очень часто совсем не требуется, чтобы при проведении документа обновлялись цены. Если юзверь хочет - пусть ручками скажет, что ему надо. А то, если цены будут каждый день неконтролируемо меняться, могут произойти неприятные вещи

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

kidus
16.09.2010, 12:30
Ну что такое закомментировать знаю!!!! )))))
ПОпробую поработать на "копии" базы.
Посмотрю что получиться.

vmil
16.09.2010, 18:44
Ну что такое закомментировать знаю!!!! )))))
ПОпробую поработать на "копии" базы.
Посмотрю что получиться.
Интерактивный курс посмотри может поможет.
http://www.teachshop.ru/?link=ftp://ftp.inetstore.ru/downloads/vtc/tsvc/0063.exe&id=2001

vovchicnn
03.10.2010, 21:17
Со всеми выше перечисленными советами В ПРИНЦИПЕ согласен, однако это смахивает на "завтрак по телевизору": слишком много зависит от того, насколько база переписана, да и просто от настроек, а их там выше крыши на эту тему.
Я эту проблему решил кардинально: при проведении любой приходный документ записывает новую цену в справочник, а при вводе нового документа автоматически подставляется последняя цена, причем User может её изменить ТОЛЬКО при наличии прав на это. Другими словами, я ещё 5 лет назад всё это написал, так фирма до сих пор с этим работает, только печатные формы обновляю на новые. В общем, я на этой ТиС собаку с пудом соли съел... Из-за сложности тексты модулей не пишу, т.к. я там, помимо прочего, и документы, и регистры перепахал.
А вот несколько внешних отчётов на эту тему предложить могу: по анализу закупок (выводит последние Х закупок по товару с указанием поставщика, в порядке возрастания цены), по анализу остатков с розничными ценами (избавляет от ситуации, когда товар на складе есть, а продать его не получается), по анализу ликвидности товаров (сравнение себестоимости с разничной ценой и предпоагаемой прибылью по имеющимся остаткам).
Если интересно, пиши [email protected]