Имя: Пароль:
1C
1C 7.7
v7: Если этот кусок кода переписать на SQL запрос?
,
0 Босечка
 
14.02.14
17:04
Если этот кусок кода переписать на SQL запрос работать будет быстрее на SQL- базе или нет?



    Док.ВыбратьДокументы(ДатаП1,ДатаП2);
    Пока Док.ПолучитьДокумент()=1 цикл
        Если (Док.Вид()="ПоступлениеМатериалов")  тогда
            Док.ВыбратьСтроки();
            Пока Док.ПолучитьСтроку()=1 цикл
                Если  Док.Материал=Материал тогда    
                    ДатаПост=Док.ДатаДок;
                    Поступление=Док.ТекущийДокумент();
                Конецесли;    
            Конеццикла;    
            
        иначеесли  (Док.Вид()="ПоступлениеАвтомобиля") тогда
            Док.ВыбратьСтроки();
            Пока Док.ПолучитьСтроку()=1 цикл
                Если  Док.Автомобиль=Материал тогда    
                    ДатаПост=Док.ДатаДок;
                    Поступление=Док.ТекущийДокумент();
                Конецесли;    
            Конеццикла;    
            
            
        Конецесли;    
    Конеццикла;
1 ДенисЧ
 
14.02.14
17:05
будет.
Если правильно запрос напишешь
2 Mikeware
 
14.02.14
17:06
Да.
Только сам код писан кем-то странным...
3 Ёпрст
 
14.02.14
17:07
Для начала, неплохо бы написать не через ж..у и в обычной выборке.

А так да, будет быстрее.
Только вот зачем получать последний документ таким извращенным способом перебирая все документы, не ясно.
4 МихаилМ
 
14.02.14
17:09
перепишите для начала выборки через объект Запрос
5 Босечка
 
14.02.14
17:10
Все понятно, спасибо. Перепишу через запрос.
6 Nickolaich
 
14.02.14
17:12
Это смотря ещё как запрос SQL написать. Достаточно будет переписать этот кусок кода средсвами 1С
7 NS
 
14.02.14
17:16
Без всякого запроса - графа отбора (если сильно не нагрузит систему), и выбратьпозначению() и обратныйпорядок(), будет моментально.
8 NS
 
14.02.14
17:17
Ну и если движение регистра/проводки делаются, то быстрее будет по движениям пробежать, без всяких граф.
9 Злопчинский
 
14.02.14
18:33
для начала унифицировать форму даных в доке поступления авто вместо Док.Автомобиль - переименовать и сделать Док.Материал (где материал и будет автомобилем) - тогда и код упростится и работать проще
10 Злой Бобр
 
15.02.14
01:26
(0) Может да, а может и не да.
Вы за что боретесь?.. А то тут про странного пейсателя правильно сказали.
В Партиях как правило есть данные по поставке. Так что несовсем понятна ваша попытка лопатить туеву кучу документов. За подобное сразу пальцы в дверной проем нада.
11 Classic
 
15.02.14
01:48
(10)
Это если партии есть.
12 Босечка
 
19.02.14
10:31
Все переписала, работать стало быстрее намного!!!!!!!!! Партий у меня нет.
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.