Имя: Пароль:
1C
1C 7.7
v7: Не формируется вторая проводка. Помогите пожалуста.
0 AlexBor
 
naïve
27.10.11
12:29
Документ списание ОС
1-я проводка по счету 101 формируется
1--я долджна по забалансовому А21 вот код:
   
Сч=СоздатьОбъект("Счет.ЕПСБУ");
   
         КодСЧ = "А21"+Сред(СчетОС.Код,4);
                // КодСЧ = "А21.38.1";
                   Если Сч.НайтиПоКоду(КодСЧ)=1 Тогда  
                       Операция.НоваяПроводка();  
                       Операция.Дебет.Счет = СчетПоКоду(КодСЧ);
                       Операция.Дебет.Субконто(ВидыСубконто.ОсновныеСредства,ОС);
                       Операция.Дебет.Субконто(ВидыСубконто.МестаХранения,МестоХранения);
                       Операция.Сумма = Сумма;
                       Операция.Количество = Количество;
                       Операция.СодержаниеПроводки ="Списано с учета: "+ СОКРЛП(ОС.Код)+ " "+ СОКРЛП(ОС.Наименование);
                       Операция.НомерЖурнала=глНомерЖурнала(СчетПоКоду(КодСЧ),СчетПоКоду(КодСЧ));
                       Операция.Учреждение = ВыбраннаяФирма;  
                   Иначе
                       Сообщить("В плане счетов отсутствует забалансовый счет для учета  при приеме ОС","!!");
                       СтатусВозврата(0);
                       Возврат;        
                   КонецЕсли;    




   Операция.Записать()

Ошибка такая почему?

Операция.Записать();
{Документ.ОС_Списание.Модуль Документа(565)}: Выбранный счет является группой!(проводка 16, счет А21)
1 ДенисЧ
 
27.10.11
12:30
"Выбранный счет является группой!"

Наверное, поэтому?
2 AlexBor
 
naïve
27.10.11
12:33
))))) Это я понял а как же когда делаю:    КодСЧ = "А21"+Сред(СчетОС.Код,4);
3 AlexBor
 
naïve
27.10.11
12:34
Хорошо тогда как надо?
4 ДенисЧ
 
27.10.11
12:34
Кто ж тебя знает, что у тебя там за план счетов?
У меня в базе счетов А21* нету...
5 alkov
 
27.10.11
12:35
КодСЧ = "А21."+Сред(СчетОС.Код,4);
6 vladko
 
27.10.11
12:35
а отладчиков воспользоваться религия не позволяет?
7 vladko
 
27.10.11
12:36
отладчиком
8 AlexBor
 
naïve
27.10.11
12:48
)) А21. не прокатывает
9 AlexBor
 
naïve
27.10.11
12:49
(4) А21 это группа а вот А21.38 это уже счет подскажи плиз как исправить?
10 ДенисЧ
 
27.10.11
12:49
КодСЧ = "А21."+Сред(СчетОС.Код,4);
сообщить(КодСч);

Что говорит?
11 AlexBor
 
naïve
27.10.11
12:52
(10) А21
12 AlexBor
 
naïve
27.10.11
12:54
(10) и что как исправить?
13 Мимохожий Однако
 
27.10.11
12:55
(9)А21.38  - это группа. А21.38.1 - это счет
14 Godofsin
 
27.10.11
12:56
ну а:
КодСЧ = "А21."+Сред(СчетОС.Код,4);
сообщить(Сред(СчетОС.Код,4));

Что говорит?
15 AlexBor
 
naïve
27.10.11
12:56
(13) Все так
16 AlexBor
 
naïve
27.10.11
12:58
(14) так КодСЧ = "А21."+Сред(СчетОС.Код,4);
сообщить(Сред(СчетОС.Код,4));

Ничего не говорит
17 Godofsin
 
27.10.11
12:59
(16) Вывод?
18 ДенисЧ
 
27.10.11
13:00
А если сообщить(СчетОС.Код); ?
19 AlexBor
 
naïve
27.10.11
13:00
(17) Скажии я не знаю?
20 AlexBor
 
naïve
27.10.11
13:01
(18) Ничего
21 Godofsin
 
27.10.11
13:01
(19) Вывод: СчетОС.Код = ПустоеЗначение.
22 ДенисЧ
 
27.10.11
13:01
Ой... А что тогда мы хотим выдернуть из ничего?

На заметку - подстрока из ничего - пустая строка...
23 AlexBor
 
naïve
27.10.11
13:03
Спасибо если можно то скажи как поправить/?
24 Мимохожий Однако
 
27.10.11
13:04
Добавь проверку
Если СокрЛП(СчетОС.Код)= "" Тогда
КодСч = "А21.38.1";
КонецЕсли;
25 1Сергей
 
27.10.11
14:56
СчетОС.Выбран()?
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой