Форум программистов, компьютерный форум CyberForum.ru

1С: Собственные программы

Войти
Регистрация
Восстановить пароль
 
Ermak27
4 / 4 / 0
Регистрация: 16.01.2013
Сообщений: 1,138
#1

1C 8.x Обработка файлов тхт - 1С

28.12.2016, 20:32. Просмотров 217. Ответов 4
Метки нет (Все метки)

Добрый вечер!
Я выбираю папку с файлами txt, данные хочу вывести в макет. Данные каждого файла выводим отдельно в строке (данные 1.тхт выводим в 1 строка, данные 2.тхт выводим 2 строка и т.д)
Сейчас у меня все данные складываются и выводятся в одну строку, подскажите что не так

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
    ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
    ТабДок.Очистить();
    Макет=ПолучитьМакет("Макет");
    ОбластьМакета=Макет.ПолучитьОбласть("Шапка");
    ТабДок.Вывести(ОбластьМакета); 
    
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Результат1",,"Результат1");
    ТЗ.Колонки.Добавить("Результат2",,"Результат2");
    
    ТЗ1 = Новый ТаблицаЗначений;
    ТЗ1.Колонки.Добавить("Номер",,"Номер");
    ТЗ1.Колонки.Добавить("Очки",,"Очки");
 
    
    МассивФайлов = НайтиФайлы(ИмяФайла, "*.txt");
    Текст1 = Новый ТекстовыйДокумент;
    
    Для каждого ТекущийФайл из МассивФайлов Цикл
        Текст1.Прочитать(ТекущийФайл.ПолноеИмя);
        Для х = 1 По Текст1.КоличествоСтрок() Цикл
            Стр = Текст1.ПолучитьСтроку(х);
            СтрокаТЗ = ТЗ.Добавить();
            Рез=Прав(Стр,6);
            РазделТЗ = СтрЗаменить(Рез, ":",Символы.ПС);                
            СтрокаТЗ.Результат1 = СтрПолучитьСтроку(РазделТЗ, 1);
            СтрокаТЗ.Результат2 = СтрПолучитьСтроку(РазделТЗ, 2);
            
            ОписаниеЧисло = Новый ОписаниеТипов("Число"); 
            СтрокаТЗ.Результат1=ОписаниеЧисло.ПривестиЗначение(СтрокаТЗ.Результат1);
            СтрокаТЗ.Результат2=ОписаниеЧисло.ПривестиЗначение(СтрокаТЗ.Результат2);
        КонецЦикла;     
        КонецЦикла;
    
    Тотал=2.5;
    Число1=(0.5);
    Число2=(0.75);
    Число11=(-0.5);
    Число22=(-0.75);
    
    Номер=0;
    Для Каждого Стр из ТЗ Цикл
        
        РезТотал=Стр.Результат1 + Стр.Результат2;
        Если РезТотал > Тотал Тогда
            СтрокаТЗ1 = ТЗ1.Добавить();
            СтрокаТЗ1.Очки=Число1;
        ИначеЕсли РезТотал < Тотал Тогда
            СтрокаТЗ1 = ТЗ1.Добавить();
            СтрокаТЗ1.Очки=Число11;
        КонецЕсли;
        
        Если Стр.Результат1 > 0 И Стр.Результат2 > 0 Тогда
            СтрокаТЗ1 = ТЗ1.Добавить();
            СтрокаТЗ1.Очки=Число2;
        ИначеЕсли Стр.Результат1 = 0 ИЛИ Стр.Результат2 = 0 Тогда
            СтрокаТЗ1 = ТЗ1.Добавить();
            СтрокаТЗ1.Очки=Число22;
        КонецЕсли;
КонецЦикла;
ТЗ1.Свернуть(,"Очки");
Для Каждого Стр из ТЗ1 Цикл
        Номер=Номер+1;
    Областьмакета=Макет.ПолучитьОбласть("Строка");
    ОбластьМакета.Параметры.Номер=Номер;
    ОбластьМакета.Параметры.Результат=Стр.Очки;
    Если Стр.Очки <= -5 Тогда
        ОбластьМакета.Параметры.Матч = "Тотал меньше 2.5";
    ИначеЕсли  Стр.Очки >= 5 Тогда
        ОбластьМакета.Параметры.Матч = "Тотал больше 2.5";
    Иначе   
        ОбластьМакета.Параметры.Матч = "Нельзя ставить";
    КонецЕсли;
    ТабДок.Вывести(ОбластьМакета);
КонецЦикла; 
    
    ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
    ТабДок.АвтоМасштаб=Истина;
    ТабДок.ОтображатьСетку = Ложь;
    ТабДок.Защита = Ложь;
    ТабДок.ТолькоПросмотр = Истина;
    ТабДок.ОтображатьЗаголовки = Ложь; 
    ТабДок.ПовторятьПриПечатиСтроки=ТабДок.Область("R4:R5");  
    ТабДок.Показать();
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2016, 20:32     1C 8.x Обработка файлов тхт
Посмотрите здесь:

1C 8.x Разбор тхт файлов - 1С
Добрый день! Есть три файла тхт, в них информация Первый файл: 306000008/07;315.60;415.60 Второй файл:...

1C 8.x Загрузить данные с файла ТХТ - 1С
Доброе утро! Подскажите, в папке есть три файла txt, мне нужно записать данные файлов в документ. Если в папки три файла то и должно...

Массовое редактирование тхт файлов - PHP
Подскажите плиз...Как правильно написать такой скрипт? Даем скрипту папку с тхт файлами он удаляет в них все кроме первой строчки...

Изменение тхт файлов внутри архива - Delphi
Друзья, наставьте на путь истинный=). Есть огромное количество .zip архивов внутри каждой из которых находятся тхт файлы (около 10 шт в...

Копирование ТХТ файлов с определенным текстом - VBA
Всем доброго времени суток! Подскажите, пожалуйста, задача такая: в папке найти все тхт файлы в которых есть слово &quot;красно-белый&quot; и...

Как построить список тхт файлов - Delphi
Здраствуйте. Подскажите код для построения списка текстовых файлов например в ListBox

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GreenkA
Модератор
Эксперт 1С
1658 / 1151 / 388
Регистрация: 25.06.2009
Сообщений: 2,899
28.12.2016, 23:23     1C 8.x Обработка файлов тхт #2
Ermak27, может из-за этого?
1C
1
ТЗ1.Свернуть(,"Очки");
Ermak27
4 / 4 / 0
Регистрация: 16.01.2013
Сообщений: 1,138
29.12.2016, 08:11  [ТС]     1C 8.x Обработка файлов тхт #3
GreenkA, а мне нужно сворачивать чтобы подсчитать итоговую сумму по всем строкам
GreenkA
Модератор
Эксперт 1С
1658 / 1151 / 388
Регистрация: 25.06.2009
Сообщений: 2,899
29.12.2016, 09:50     1C 8.x Обработка файлов тхт #4
Ermak27, и где логика?) у вас и получится одна строка с общим количеством Очков.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.12.2016, 23:42     1C 8.x Обработка файлов тхт
Еще ссылки по теме:

преобразование АВС.ТХТ в файл 123.ТХТ - Pascal
Написать программу, преобразующую файл АВС.ТХТ в файл 123.ТХТ. Строки изменяются по следующему правилу: все цифры заменяются на Содержимое...

Таблица выборки из двух тхт файлов.как это сотворить? - PHP
Исходные данные: два файла в обменном формате Mapinfo (в архиве во вложении) Первый файл - таблица состоящая из полей: порядковый номер,...

Почему при импорте тхт-файлов в таблице только пустые строки? - MS Access
Вот пример исходника: DoCmd.TransferText acImportDelim, 'Valuables - спецификация импорта', 'Temp_val', f1чего не так?

Расширение *.ТХТ вместо *.тхт - Windows 7
С недавнего времени стало так, когда создаешь текстовый документ. Остальные, хранящиеся файлы в норме. Может было у кого такое?

Обработка файлов. - Turbo Pascal
1)Вывести все буквы данного текстового файла, входящие в файл не менее двух раз. 2)Даны целочисленные файлы f и g. Удалить из файла f...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
renat_dmitriev
93 / 93 / 26
Регистрация: 26.08.2016
Сообщений: 308
29.12.2016, 23:42     1C 8.x Обработка файлов тхт #5
Ermak27, Итоговая сумма по всем строкам вычисляется методом Итог
Yandex
Объявления
29.12.2016, 23:42     1C 8.x Обработка файлов тхт
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru