Имя: Пароль:
1C
1C 7.7
v7: Разделитель учета в ПУБ
0 kobzon
 
30.05.13
14:37
Не могу настроить разделитель учета в ПУБ. В Конфигураторе указал разделитель Фирма(справочник фирмы). В карточке счета когда выбираю фирму, отчет выдается пустой. Вопщем работает только когда стоит флаг По всем. Что я не так сделал? Или это вапще не возможно?
1 Флудер
 
30.05.13
14:39
(0) Ну указал, а кто его в имеющихся проводках заполнит?
2 КапЛей
 
30.05.13
14:39
проводки в документах были по пустой фирме. установить разделитель маловато будет.
3 kobzon
 
30.05.13
14:41
Не ну в каждом документе выбиралась конкретная фирма. Реквизит справочника фирмы не то?
4 КапЛей
 
30.05.13
14:44
открой журнал операций или журнал проводок. посмотри стоит фирма в реквизите проводок.
5 ДенисЧ
 
30.05.13
14:44
А впроводках, в проводках что?
6 Woodpecker
 
30.05.13
14:44
не знаю ПУБа, но предполагаю что в алгоритмах формироания проводок разделитель не прописан, потому в проводках разделитель пустой
7 kobzon
 
30.05.13
14:45
Неа не стоит((
8 Флудер
 
30.05.13
14:46
(7) Ну вот и ответ на твой вопрос))
9 kobzon
 
30.05.13
14:46
(6) А как должно быть прописано? Или где можно подсмотреть?
10 ДенисЧ
 
30.05.13
14:47
(9) в коде должно быть прописано, при формировании проводок...
Насколько я помню, в пубе проводки формируются в глобальнике... Так что отладчик в зубы и вперёд
11 Флудер
 
30.05.13
14:47
(9) Чтото типа Проводка.РазделительУчета=ФирмаДокумента, при формировании всех проводок
12 Woodpecker
 
30.05.13
14:47
(9) ну когда проводка формируется и заполняются все ее реквизиты, счета дбата/кредита, субконто и пр, там нужно еще код дописать чтобы в разделитель учета подставлялась фирма из документтов
13 kobzon
 
30.05.13
14:49
Понял. Всем спасибо!!! Пошел в отладчик))
14 КапЛей
 
30.05.13
14:50
(9) в модулях документов
15 kobzon
 
30.05.13
14:52
(14) Вроде сказали что в глобальном.
16 КапЛей
 
30.05.13
14:57
(14) а откуда будет обращение к глобальнику?
17 kobzon
 
30.05.13
14:58
(16) ну обращение понятно что из модуля документа, но  действия то будут в глобальнике)
18 КапЛей
 
30.05.13
15:06
(17) все верно. посмотрел в нашем ПУБе сейчас. Фирма передается через контекст в процедуру ГМ
19 kobzon
 
30.05.13
15:08
(18) А кусок процедуры можешь выложить?
Я просто смотрю типовый пуб, там справочника фирмы то даже нет)
20 kobzon
 
30.05.13
15:12
Хотя наверное оно будет это:
глФормированиеПроводок(ТекущийДокумент(), Операция);
глСформироватьПроводки(Операция, 2);
21 КапЛей
 
30.05.13
15:12
выкладываю. украинский ПУБ.

// добавляем проводку или корреспонденцию
Процедура глПров(Конт,СчД,СчК,Сумма,Сод,Кво,СубД1,СубД2,СубД3,СубК1,СубК2,СубК3,Вал,ВалСумма,НомерЖурнала,Режим)
   Если (Окр(Сумма,2)=0) и (Окр(ВалСумма,2)=0) и (Окр(Кво,3)=0) Тогда
       Возврат;
   КонецЕсли;
   Если Режим = "Проводка" Тогда
       Конт.Операция.НоваяПроводка();
   Иначе                            
       Конт.Операция.НоваяКорреспонденция();
   КонецЕсли;
   СчетД = ?(ТипЗначения(СчД)=2,СчетПоКоду(СчД),СчД);
   СчетК = ?(ТипЗначения(СчК)=2,СчетПоКоду(СчК),СчК);
   Конт.Операция.Дебет.Счет = СчетД;
   Конт.Операция.Кредит.Счет = СчетК;
   // субконто
   Если СубД1<>0 Тогда
       Конт.Операция.Дебет.Субконто(1,СубД1);
   КонецЕсли;
     Если СубД2<>0 Тогда
       Конт.Операция.Дебет.Субконто(2,СубД2);
   КонецЕсли;
     Если СубД3<>0 Тогда
       Конт.Операция.Дебет.Субконто(3,СубД3);
   КонецЕсли;
     Если СубК1<>0 Тогда
       Конт.Операция.Кредит.Субконто(1,СубК1);
   КонецЕсли;
   Если СубК2<>0 Тогда
       Конт.Операция.Кредит.Субконто(2,СубК2);
   КонецЕсли;                                    
   Если СубК3<>0 Тогда
       Конт.Операция.Кредит.Субконто(3,СубК3);
   КонецЕсли;                                    
   Конт.Операция.Сумма = Сумма;
     Конт.Операция.Комментарий = Сод;
     Если СокрЛП(СчетД)="" Тогда
         Если СчетК.Количественный=1 Тогда
             Конт.Операция.Количество = Кво;
         КонецЕсли;
     ИначеЕсли СокрЛП(СчетК)="" Тогда
         Если СчетД.Количественный=1 Тогда
             Конт.Операция.Количество = Кво;
         КонецЕсли;
     Иначе // выбраны оба счета
         Если (СчетД.Количественный=1) или (СчетК.Количественный=1) Тогда
             Конт.Операция.Количество = Кво;
         КонецЕсли;
     КонецЕсли;
     Конт.Операция.Валюта = Вал;
     Конт.Операция.ВалСумма = ВалСумма;                                                    
     Конт.Операция.НомерЖурнала = НомерЖурнала;
     Конт.Операция.НашаФирма = Конт.Фирма;
     
     ПроверитьПроводку(Конт,СчетД,СчетК,Вал);
КонецПроцедуры    

Предпоследняя строка процедуры устанавливает фирму в качестве РУ
22 kobzon
 
30.05.13
15:16
(21) Это из какого документа или это глобальник?