7.7 Как увеличить длину строки в 1С 7?

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем fireanngel, 26 июн 2013.

  1. TopicStarter Overlay
    fireanngel
    Offline

    fireanngel

    Регистрация:
    26 июн 2013
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Помогите разобраться, плиз! Сейчас дорабатываю загрузку Выписки из банка в 1С. Для этого создаю объект выписка, а затем создаю новую выписку и заполняю строками. При считывании значения поля НазначениеПлатежа - считываются первые 100 символов. В конфигураторе в документе Выписка реквизиту Назначение платежа установила длину 250. Не помогло. Скажите, можно ли вообще увеличить количество считываемых символов? Если да - то как?
  2. MaxxaM
    Offline

    MaxxaM Опытный в 1С

    Регистрация:
    16 окт 2007
    Сообщения:
    288
    Симпатии:
    2
    Баллы:
    29
    Что то не так выгрузка из клиент банка происходит небось через файл обмена? Проверь длину строки в нем. 1с по ходу - читает строки любой длины.

    Либо првоверь текст может есть символ конца строки или возврата коретки (разные коды)
  3. TopicStarter Overlay
    fireanngel
    Offline

    fireanngel

    Регистрация:
    26 июн 2013
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Да, через файл обмена. И в нем строка не обрезана.
    Вот кусок текста (писался не мной):

    Код:
    //******************************************************************************
    // ПровестиДокументПоСчету(Документ, Счет, ДатаОперации='00.00.0000', Приход=0, Расход=0)
    //
    // Параметры:
    //  Документ	 - Документ, документ на основании которого формируется строка выписки.
    //  Счет		 - Справочник.БанковскиеСчета, по которому формируется строка выписки.
    //  ДатаОперации - Дата, дата на которую формируется строка выписки.
    //  Приход	   - Число, сумма операции по банку, приход на счет.
    //  Расход	   - Число, сумма операции по банку, расход со счета.
    //
    // Описание:
    //  В данной процедуре, на основании загруженного платежного документа или документа
    // "ОперацияПоРасчСчету", формируется документ "Выписка".
    //
    Процедура ПровестиДокументПоСчету(Документ, Счет, ДатаОперации='00.00.0000', Приход=0, Расход=0)
    Если ПустоеЗначение(Счет)=1 Тогда Возврат; КонецЕсли;Объект=СоздатьОбъект("Документ");
    Объект.ВыбратьПодчиненныеДокументы(, , Документ);
    Пока Объект.ПолучитьДокумент()=1 Цикл
    Если Объект.Вид()<>"Выписка" Тогда Продолжить;
    ИначеЕсли Объект.БанковскийСчет<>Счет Тогда Продолжить;
    КонецЕсли;Замены=0;
    Объект.ВыбратьСтроки();
    Пока Объект.ПолучитьСтроку()=1 Цикл
    Если Объект.ПервичныйДокумент<>Документ Тогда
    ИначеЕсли Объект.ДатаДок<>ДатаОперации Тогда
    Замены=Замены+ИзменитьАтрибут(Объект, "Приход", 0);
    Замены=Замены+ИзменитьАтрибут(Объект, "Расход", 0);Иначе
    Замены=Замены+ИзменитьАтрибут(Объект, "Приход", Мин(Объект.Приход, Приход));
    Замены=Замены+ИзменитьАтрибут(Объект, "Расход", Мин(Объект.Расход, Расход));
    Приход=Приход-Объект.Приход;
    Расход=Расход-Объект.Расход;
    КонецЕсли;
    КонецЦикла;Если 0<Замены Тогда
    ЗаписатьДокумент(Объект);
    КонецЕсли;
    КонецЦикла;
    Если ПустоеЗначение(ДатаОперации)=1 Тогда Возврат; КонецЕсли;
    Если (Приход=0) и (Расход=0) Тогда Возврат; КонецЕсли;Объект=СоздатьОбъект("Документ.Выписка");
    Объект.ВыбратьДокументы(ДатаОперации, ДатаОперации);
    Пока Объект.ПолучитьДокумент()=1 Цикл
    Если Объект.БанковскийСчет=Счет Тогда
    Прервать;
    КонецЕсли;
    КонецЦикла;Если Объект.Выбран()=0 Тогда
    Объект.Новый();
    Объект.ДатаДок=ДатаОперации;
    Объект.БанковскийСчет=Счет;
    Сообщить("Создан документ: "+Объект.Вид()+" "+Объект.НомерДок+" ("+Объект.ДатаДок+")", " ");
    КонецЕсли;
    Объект.НоваяСтрока();									
    Объект.ПервичныйДокумент = Документ;Если ПустоеЗначение(Документ) = 0 Тогда
    Если Метаданные.Документ(Объект.Вид()).РеквизитТабличнойЧасти("НомерДокВходящий").Выбран() = 1 Тогда
    Объект.НомерДокВходящий = Документ.НомерДок;
    КонецЕСли;Если Метаданные.Документ(Объект.Вид()).РеквизитТабличнойЧасти("ДатаДокВходящий").Выбран() = 1 Тогда
    Объект.ДатаДокВходящий  = Документ.ДатаДок;  
    КонецЕсли;
    КонецЕсли;глЗаполнитьСтрокуВыпискиПоПлатежномуДокументу(Объект, Документ, Приход + Расход);
    ЗаписатьДокумент(Объект);
    КонецПроцедуры 
  4. MaxxaM
    Offline

    MaxxaM Опытный в 1С

    Регистрация:
    16 окт 2007
    Сообщения:
    288
    Симпатии:
    2
    Баллы:
    29
    Приведенная процедура явно не та.... сие есть создание банковской выписки на основе уже внесенных в 1с платежных поручений

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