Приходование одной фирмой расходование другой (ТиС)

SeverBap

Well-Known Member
18.09.2007
451
0
34
г. Брянск
#1
Кто-нибудь такое делал в ТиС?
У меня получается так:
Необходимо завести дополнительный справочник с правилами обмена в собственных фирмах
(ОрганизацияОтКуда, ОрганизацияКуда, СкладОтКуда, СкладКуда, Наценка)
Далее в документе реализации необходимо дописать проверку на наличее остатков в других фирмах, после которого если нам не хватает товара 1С автоматом должна создать куплю продажу и поступление...
Еще необходимо указать с какой наценкой продается товар "нашей" фирме от "нашей" - где это (и как) можно реализовать автоматом или прийдется в справочнике правил указывать наценка (а если по списку товару нужно разные???)

Или у меня опять велосипед опять проектируется?

Добавлено: Скорее всего туда необходимо добавить бытсрая продажа "Продажа собственной фирме"? (после проверки остатков конечнои выправки сколько необходимо)
 
P

Pro

Гость
#2
велосипед...
в ТиС есть механизм продажа собственной фирме, посмотри туда....
 

SeverBap

Well-Known Member
18.09.2007
451
0
34
г. Брянск
#3
Значит его необходимо доработать (получается только правила забора товара прикрутить в автоматическом режиме!) в реализации

Косяк тот что если склады разные оптовый и розничный!!!!!!
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#8
Делал я когда-то подобную штуку. Порылся - не нашел (5 компьютеров утекло с тех пор :RTFM: ). Идея такова (впрочем, лежит на поверхности) :
Исследуются остатки, на них (полностью или выборочно) оформляется приход на фирму 1 (с указанной наценкой),
после чего производится продажа фирме 2 тех же позиций. Помнится, для этого использовался некий фиктивный контрагент,
выступающий вначале поставщиком, затем покупателем, но это optional.
Задача, в общем, несложная, повозиться только придется
 

SeverBap

Well-Known Member
18.09.2007
451
0
34
г. Брянск
#11
Не могу врубится почему-то цены в формируемой реализации по недостоющим позициям ставит не те ведь впринципе прописал везде все:
Код:
РеализацияСобственнойФирме=Создатьобъект("Документ.Реализация");
РеализацияСобственнойФирме.Новый();
РеализацияСобственнойФирме.ДатаДок = ДатаДок;
РеализацияСобственнойФирме.АвтоВремяНачалоДня();
РеализацияСобственнойФирме.Фирма=ОптФирма;
РеализацияСобственнойФирме.Склад=ОптСклад;
РеализацияСобственнойФирме.Контрагент=ПравилаПродажФирмам.КонтрагентПосредник;
Если ПустоеЗначение(ПравилаПродажФирмам.ДоговорПродажи)=1 Тогда
РеализацияСобственнойФирме.Договор=РеализацияСобственнойФирме.Контрагент.Основно
йДоговор;
Иначе
РеализацияСобственнойФирме.Договор=ПравилаПродажФирмам.ДоговорПродажи;
КонецЕсли;
РеализацияСобственнойФирме.ТипЦен=ТипЦенРеализации;
РеализацияСобственнойФирме.Валюта=ТипЦенРеализации.Валюта;
РеализацияСобственнойФирме.УчитыватьНП=ТипЦенРеализации.ЦенаВклНП;
РеализацияСобственнойФирме.УчитыватьНДС=ТипЦенРеализации.ЦенаВклНДС;
// уникальные реквизиты шапки
РеализацияСобственнойФирме.КодОперации = глКО.Продажа;
РеализацияСобственнойФирме.ДатаОплаты  = ДатаДок;
РеализацияСобственнойФирме.ЗагрузитьТабличнуюЧасть(ТаблицаНедостатков);
//**************************
// Цикл по всем товарам в документе
РеализацияСобственнойФирме.ВыбратьСтроки();
Пока РеализацияСобственнойФирме.ПолучитьСтроку() = 1 Цикл
ТекТМЦ = РеализацияСобственнойФирме.Номенклатура;
// Получаем цену
ПЦена = 0;
ПЕдиницаКонт = РеализацияСобственнойФирме.Единица;
ПЕдиницаЦены = ПЕдиницаКонт;						 
ПВалютаЦены  = ТипЦенРеализации.Валюта; 
ПЦенаВклНП	= ТипЦенРеализации.ЦенаВклНП; 
ПЦенаВклНДС  = ТипЦенРеализации.ЦенаВклНДС;
Если глВернутьЦену(ТекТМЦ, РеализацияСобственнойФирме.ТипЦен, РеализацияСобственнойФирме.ДатаДок, ПЦена, ПЕдиницаЦены, ПВалютаЦены) = 1 Тогда
// Приводим к одной единице (если в документе она есть)
Если ПЕдиницаЦены.Коэффициент <> РеализацияСобственнойФирме.Коэффициент Тогда
Если ПЕдиницаЦены.Коэффициент <> 0 Тогда
ПЦена = (ПЦена * РеализацияСобственнойФирме.Коэффициент) / ПЕдиницаЦены.Коэффициент;
КонецЕсли;
КонецЕсли;
глПересчитатьЦенуВДокументе(РеализацияСобственнойФирме, РеализацияСобственнойФирме.УчитыватьНП, РеализацияСобственнойФирме.УчитыватьНДС, ПЦена, ПВалютаЦены, ПЦенаВклНП, ПЦенаВклНДС);
Иначе
РеализацияСобственнойФирме.Цена = 0;
КонецЕсли; 
КонецЦикла;
глПересчетТаблЧасти(РеализацияСобственнойФирме,"Цена");
РеализацияСобственнойФирме.Комментарий = "Продажа собственной фирме";
РеализацияСобственнойФирме.Записать();
РеализацияСобственнойФирме.Провести();
Если РеализацияСобственнойФирме.Проведен() = 0 Тогда
ОтменитьТранзакцию();
Возврат;
КонецЕсли;