7.7 Проблема с ОСВ по счету 90.1.1

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем DmiSb, 18 ноя 2009.

  1. TopicStarter Overlay
    DmiSb
    Offline

    DmiSb

    Регистрация:
    18 ноя 2009
    Сообщения:
    7
    Симпатии:
    0
    Баллы:
    1
    1С:Предприятие 7.7, Бухучет, ред. 4.5
    При формировании оборотно-сальдовой ведомости по счету 90.1.1 документы, введенные вручную, группируются по субконто (Вид субконто2 - Ставка НДС, Вид субконто3 - Ставка НП), группируются корректно. А документы, импортированные из другой программы, по данным субконто не группируются, субконто отображается как <...>. При импорте формиоуется документ - Оказание услуг. В обоих случаях в табличной части выбираются услуги, у которых Ставка НДС и Ставка НП указаны. Однако при импорте что-то идет не так, как нужно. Необходима помошь. Самостоятельно проблему решить не удается - опыта в программировании 1С недостаточно. Если нужно, могу привести текст обработки.
    Заранее благодарен.
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Помимо обработки выложите скриншот проводок, которые формирует импортированный документ
  3. TopicStarter Overlay
    DmiSb
    Offline

    DmiSb

    Регистрация:
    18 ноя 2009
    Сообщения:
    7
    Симпатии:
    0
    Баллы:
    1
    Код:
    Процедура Загрузить()
    
    ТекстИмп = СоздатьОбъект("Текст");
    ТекстИмп.Открыть("C:\Chet.imp");    
    
    НовыйДокумент = 0;
    Док = СоздатьОбъект("Документ.ОказаниеУслуг");
    КАгент = СоздатьОбъект("Справочник.Контрагенты");
    ВарНДС = СоздатьОбъект("Справочник.ВариантыРасчетаНалогов");
    ВарНДС.НайтиПоНаименованию("НДС сверху");
    ТаблЗнач = СоздатьОбъект("ТаблицаЗначений");
    ТаблЗнач.НоваяКолонка("Услуга","Справочник.Номенклатура",,,,,,);
    ТаблЗнач.НоваяКолонка("Количество","Число",14,3,,,,);
    ТаблЗнач.НоваяКолонка("Цена","Число",15,2,,,,);
    ТаблЗнач.НоваяКолонка("Сумма","Число",15,2,,,,);
    ТаблЗнач.НоваяКолонка("НДС","Число",15,2,,,,);
    ТаблЗнач.НоваяКолонка("Всего","Число",15,2,,,,);
    Услуга = СоздатьОбъект("Справочник.Номенклатура");
    ТаблОшибок = СоздатьОбъект("ТаблицаЗначений");
    ТаблОшибок.НоваяКолонка("НазваниеОшибок", "Строка",,,,,,);
    
    Для Ном=1 По ТекстИмп.КоличествоСтрок() Цикл
    Стр = ТекстИмп.ПолучитьСтроку(Ном);
    Стр = СокрЛП(Стр);
    
    Если Сред(Стр, 1, 7) = "<Docum=" Тогда
    СчетНом = СчетНом + 1;
    
    ТекстОшибки = "";		
    Док.Новый();
    НовыйДокумент = 1;
    ТаблЗнач.УдалитьСтроки();
    ТаблОшибок.УдалитьСтроки();
    КолОшибок = 0;
    НомСтр = 0;
    
    Стр = Сред(Стр, 8, СтрДлина(Стр) - 7);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    Док.НомерДок = Тмп;
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    Док.ДатаДок = Тмп;
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    
    КАгент.НайтиПоНаименованию(Тмп, 0, 0);
    Если КАгент.Код = "" Тогда
    ТаблОшибок.НоваяСтрока();
    КолОшибок = КолОшибок + 1;
    ТаблОшибок.УстановитьЗначение(КолОшибок, 1, 
    "Ошибка загрузки документа № "+Док.НомерДок+" - Не найден клиент "+Тмп);
    КонецЕсли;	
    Док.Контрагент = КАгент.ТекущийЭлемент();
    
    Док.ТипУслуги = 1;
    Док.ВариантРасчетаНалогов = ВарНДС.ТекущийЭлемент();
    Док.Договор = КАгент.ОсновнойДоговор;
    
    ИначеЕсли Сред(Стр, 1, 8) = "</Docum>" <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/тогда')">Тогда	</span>
    
    Если (НовыйДокумент = 1) и (ТаблЗнач.КоличествоСтрок() > 0) Тогда
    Если ТаблОшибок.КоличествоСтрок() = 0 Тогда
    Док.ЗагрузитьТабличнуюЧасть(ТаблЗнач);
    Док.Записать();
    НовыйДокумент = 0;
    Сообщить("Создан акт выполненных работ №"+Док.НомерДок, "."); 
    Иначе
    Пока ТаблОшибок.КоличествоСтрок() > 0 Цикл
    Сообщить(ТаблОшибок.ПолучитьЗначение(1, 1));
    ТаблОшибок.Удалитьстроку(1);
    КонецЦикла;	
    КонецЕсли;
    КонецЕсли;	
    
    
    ИначеЕсли Сред(Стр, 1, 7) = "<Table=" Тогда
    
    Стр = Сред(Стр, 8, СтрДлина(Стр) - 7);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    Услуга.НайтиПоНаименованию(Тмп, 0, 1);
    
    Если Услуга.Код = "" Тогда
    ТаблОшибок.НоваяСтрока();
    КолОшибок = КолОшибок + 1;
    ТаблОшибок.УстановитьЗначение(КолОшибок, 1,
    "Ошибка загрузки документа № "+Док.НомерДок+
    " - Не найдена услуга "+Тмп);
    КонецЕсли;
    
    ТаблЗнач.НоваяСтрока();
    НомСтр = НомСтр + 1;
    ТаблЗнач.УстановитьЗначение(НомСтр, 1, Услуга.ТекущийЭлемент());
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    ТаблЗнач.УстановитьЗначение(НомСтр, 2, Число(Тмп));
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    ТаблЗнач.УстановитьЗначение(НомСтр, 3, Число(Тмп));
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    ТаблЗнач.УстановитьЗначение(НомСтр, 4, Число(Тмп));
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз);
    Поз =  Найти(Стр, "^");
    Тмп = Сред(Стр, 1, Поз - 1);
    ТаблЗнач.УстановитьЗначение(НомСтр, 5, Число(Тмп));
    
    Стр = Сред(Стр, Поз + 1, СтрДлина(Стр) - Поз-1);
    ТаблЗнач.УстановитьЗначение(НомСтр, 6, Число(Стр));
    
    КонецЕсли;	
    КонецЦикла;
    
    ФС.УдалитьФайл("C:\Chet.imp");
    
    КонецПроцедуры
    
    
    Структура файла C:\Chet.imp


    Файлы прикрепил
    [warn="!!! Внимание !!!"]Пользуйтесь тегами[/warn]

    Вложения:

    • 1.JPG
      1.JPG
      Размер файла:
      34,1 КБ
      Просмотров:
      27
    • 2.JPG
      2.JPG
      Размер файла:
      20,4 КБ
      Просмотров:
      31
    • 3.JPG
      3.JPG
      Размер файла:
      47,6 КБ
      Просмотров:
      33
    • 4.JPG
      4.JPG
      Размер файла:
      49,9 КБ
      Просмотров:
      33
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    В документе ОказаниеУслуг есть реквизит шапки ВерсияОбъекта (строка дниной 8). Он то как раз и не заполнен при загрузке. Должен принимать значение больше чем "7.70.421".
  5. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    лучше выложи сюда обработку и файл загрузки
  6. TopicStarter Overlay
    DmiSb
    Offline

    DmiSb

    Регистрация:
    18 ноя 2009
    Сообщения:
    7
    Симпатии:
    0
    Баллы:
    1
    Файл нужно переименовать в Chet.imp

    Вложения:

    • ChetInput.ert
      Размер файла:
      44,5 КБ
      Просмотров:
      36
    • chet.txt
      Размер файла:
      154 байт
      Просмотров:
      37
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    На кой ляд? Все же кроется в модуле проведения.....
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Добавите в отбработку строка 89

    Код:
    Док.Новый()
    Док.ВерсияОбъекта = Константа.НомерРелиза; //вот что добавили
    
    
    и перевыгрузите документы.

    Можно проще - написать обработку которая подставила бы этот реквизит
  9. TopicStarter Overlay
    DmiSb
    Offline

    DmiSb

    Регистрация:
    18 ноя 2009
    Сообщения:
    7
    Симпатии:
    0
    Баллы:
    1
    Поставил в качестве значения новер версии конфигурации.
    Действительно работает. Спасибо.
    А нужно ли менять это значение при обновлении конфигурации ?

    Все понятно, попробую так сделать.
    Огромное спасибо
  10. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Это служебная константа. Менять ее не нужно (да у вас "в лоб" и не получится). 1С при обновлении релиза меняет ее сама

Поделиться этой страницей