Имя: Пароль:
1C
 
Проверка на курсив в ADODBRecordset
0 Fannasankh
 
26.11.15
14:04
Пока ADODBRecordset.EOF() = 0 Цикл
        
         #Если ТолстыйКлиентОбычноеПриложение Тогда
             ОбработкаПрерыванияПользователя();         
         #КонецЕсли
        
         НомерСтроки = НомерСтроки + 1;
        
         Если НомерСтроки = 0 Тогда
             ADODBRecordset.MoveNext();  
             Продолжить;            
         КонецЕсли;
        
         Поле = ADODBRecordset.Fields.Item(0);
        
         Если НЕ Поле.ActualSize = 0 Тогда        // Пустое поле EXCEL.
             НоваяСтрока = тзРезультат.Добавить();
             НоваяСтрока.НомерСтроки = НомерСтроки;
            
             Для ит = 1 ПО КолвоКолонокExcel Цикл
                
                 ИмяКолонки = "К_" + ит;
                 Если НЕ СтруктураКолонок.Свойство(ИмяКолонки) Тогда
                     Продолжить;                
                 КонецЕсли;
                
                 ИмяКолонки = СтруктураКолонок[ИмяКолонки];
                
                
                 Поле = ADODBRecordset.Fields.Item(ит - 1);
                
                 Если Поле.ActualSize = 0 Тогда        // Пустое поле EXCEL.
                     Продолжить;
                 КонецЕсли;
                
                 ЗначениеЯчейки = Поле.Value;        // Учитывая параметр HDR=YES в строке соединения, данные считываются в соответствии с их типом.
                 //УбиратьДвойныеПробелыИзНаименования =
                 //(ВидПрайса = Перечисления.ко_ВидыПрайсовИнструмента.TaeguTec)
                 //И
                 //(ИмяКолонки = "Наименование");
                
                 //Если УбиратьДвойныеПробелыИзНаименования Тогда
                 //    Пока Найти(ЗначениеЯчейки, "  ") > 0 Цикл
                 //        ЗначениеЯчейки = СтрЗаменить(ЗначениеЯчейки, "  ", " ");                        
                 //    КонецЦикла;                 
                 //КонецЕсли;
                
                 //Если ИмяКолонки = "Наименование_Kyocera" Тогда
                 //    НоваяСтрока.Наименование = НоваяСтрока.Наименование + " " + ЗначениеЯчейки;
                 //Иначе
                 НоваяСтрока[ИмяКолонки] = ЗначениеЯчейки;
                
                 //КонецЕсли;
             КонецЦикла;
         Иначе
             Поле = ADODBRecordset.Fields.Item(1);
            
             Если Поле.ActualSize = 0 Тогда        // Пустое поле EXCEL.
                ADODBRecordset.MoveNext();       // Следующая строка.
                Продолжить;
             КонецЕсли;
             ЗначениеЯчейки = Поле.Value;
             Если СтрДлина(НоваяСтрока["Описание"])>0 Тогда
                 НоваяСтрока["Описание"] =  НоваяСтрока["Описание"] + Символы.ПС + ЗначениеЯчейки;
             Иначе
                 НоваяСтрока["Описание"] =  ЗначениеЯчейки;
             КонецЕсли;
         КонецЕсли;
        
         ADODBRecordset.MoveNext();   // Следующая строка.
        
     КонецЦикла;




Как сделать проверка того, что текст в Поле.Value выделен курсивом или жирным?
1 cw014
 
26.11.15
14:05
(0) Шта?
2 cw014
 
26.11.15
14:05
(0) Как проверить, что в базе данных поле курсивное???
И ведь не пятница еще
3 Fannasankh
 
26.11.15
14:06
Я это получаю из Excell
4 cw014
 
26.11.15
14:06
Так получай лист экселя, и не базу данных
5 Горогуля
 
26.11.15
14:07
(2) это фигня. вот как установить?..
6 Fannasankh
 
26.11.15
14:07
(4) а это возможно сделать без Excell.Application?
7 Fannasankh
 
26.11.15
14:09
(2) эта информация же как-то хранится. Раз она есть в документе
8 Живой Ископаемый
 
26.11.15
14:13
хранится, но через АДО к ней не доступится. Потому что это не слой данных, а слой представления и формления
9 Живой Ископаемый
 
26.11.15
14:13
Через АДО также например можно и писать в екслевский файл. но формулу установить нельзя
10 Fannasankh
 
26.11.15
14:14
(8) то есть только Excell.Application и больше никак?
11 vde69
 
26.11.15
14:18
12 Fannasankh
 
26.11.15
14:20
(11) дело в том, что данную задачу нельзя реализовывать с использованиям экселя, потому что его нет и в ближайшее время не будет
13 Горогуля
 
26.11.15
14:23
(12) добавь колонку про курсив
14 vde69
 
26.11.15
14:25
твою задачу из (0) наверно можно решить через АДО, там есть некие системные области и можно в них ковыряться... например количество строк и столбцов лежит в 11 колонке и столбце
15 vde69
 
26.11.15
14:26
только популярной документации нету, тут или методом тыка/анализа, либо читать мсдм мелкомягких
16 Fannasankh
 
26.11.15
14:34
(15) Пока придумал другое условие, как распознавать то, что мне нужно. А вообще, наверно, придётся ковыряться
2 + 2 = 3.9999999999999999999999999999999...