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

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

Войти
Регистрация
Восстановить пароль
 
Skaylans23
0 / 0 / 0
Регистрация: 10.01.2017
Сообщений: 1
#1

1C 7.x Итоги по отработанному времени! - 1С

10.01.2017, 19:11. Просмотров 180. Ответов 0
Метки нет (Все метки)

У меня есть процедура, которая рассчитывает количество отработанного времени и мне надо: 1)итог по отработанному времени сотрудника и 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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
ТЧ.Сортировать("Код,ДатаСоб,Время");
    ТЧ2.НоваяКолонка("Филиал",,,,,5,,);
    ТЧ2.НоваяКолонка("Код",,,,,8,,);
    ТЧ2.НоваяКолонка("ДатаСоб",,,,,5,,);
    ТЧ2.НоваяКолонка("Приход",,,,,5,,);
    ТЧ2.НоваяКолонка("Уход",,,,,5,,);
    ТЧ2.НоваяКолонка("КолОтрМин",,,,,5,,);
     
    Час2 = 0;
    Мин2 = 0;
    СекОстМин= 0; 
    Сек2 = 0;
    
    Час3 = 0;
    Мин3 = 0;
    СекОстМин3 = 0; 
    Сек2 = 0;
    
    Час4 = 0;
    Мин4 = 0;
    СекОстМин4 = 0; 
    Сек4 = 0;
    
    ТекКод = "";
    ТекДата = "";
    ТекВремя = "";
    ТекТип = "";
    
 
    ТЧ.ВыбратьСтроки();
    
    Пока ТЧ.ПолучитьСтроку() = 1 Цикл
        
        Если ТекКод = "" Тогда
            
            ТекКод = ТЧ.Код;
            ТекДата = ТЧ.ДатаСоб;
            ТекТип = ТЧ.Тип;
            
            Если ТекТип = "Приход" Тогда
                
                ТекВремя = ТЧ.Время;
                
            Иначе
                
                ТЧ2.НоваяСтрока();
                ТЧ2.Филиал = ТЧ.Филиал;
                ТЧ2.Код = ТЧ.Код;
                ТЧ2.ДатаСоб = ТЧ.ДатаСоб;
                ТЧ2.Приход = "0";
                ТЧ2.Уход = ТЧ.Время;
                ТЧ2.КолОтрМин = "0";
                
            КонецЕсли;
            
        Иначе
            
            Если (ТекКод = ТЧ.Код) и (ТекДата = ТЧ.ДатаСоб) Тогда
                
                Если (ТЧ.Тип = "Уход") и (ТекТип = "Приход") Тогда
                    
                    ТЧ2.НоваяСтрока();
                    ТЧ2.Филиал = ТЧ.Филиал;
                    ТЧ2.Код = ТЧ.Код;
                    ТЧ2.ДатаСоб = ТЧ.ДатаСоб;
                    ТЧ2.Приход = ТекВремя;
                    ТЧ2.Уход = ТЧ.Время;
                    ТЧ2.КолОтрМин = ТЧ2.Уход - ТЧ2.Приход;
                    
                    Час4 = Цел(Число(ТЧ2.Приход)/3600);
                    СекОстМин4 = Число(ТЧ2.Приход)%3600; 
                    Мин4 = Цел((Число(ТЧ2.Приход) - Час4*3600)/60);
                    Сек4 = СекОстМин4%60;
                    
                    ТЧ2.Приход = ?(СтрДлина(Строка(Час4))=2,Строка(Час4),"0" + Строка(Час4)) + ":" + ?(Строка(Мин4)=2,Строка(Мин4),"0" + Строка(Мин4)) + ":" + ?(Строка(Сек4)=2,Строка(Сек4),"0" + Строка(Сек4));
                    
                    Час3 = Цел(Число(ТЧ2.Уход)/3600);
                    СекОстМин3 = Число(ТЧ2.Уход)%3600; 
                    Мин3 = Цел((Число(ТЧ2.Уход) - Час3*3600)/60);
                    Сек3 = СекОстМин3%60;
                    
                    ТЧ2.Уход = ?(СтрДлина(Строка(Час3))=2,Строка(Час3),"0" + Строка(Час3)) + ":" + ?(Строка(Мин3)=2,Строка(Мин3),"0" + Строка(Мин3)) + ":" + ?(Строка(Сек3)=2,Строка(Сек3),"0" + Строка(Сек3));
                    
                    Час2 = Цел(Число(ТЧ2.КолОтрМин)/3600);
                    СекОстМин2 = Число(ТЧ2.КолОтрМин)%3600; 
                    Мин2 = Цел((Число(ТЧ2.КолОтрМин) - Час2*3600)/60);
                    Сек2 = СекОстМин%60;
                    
                    ТЧ2.КолОтрМин = ?(СтрДлина(Строка(Час2))=2,Строка(Час2),"0" + Строка(Час2)) + ":" + ?(Строка(Мин2)=2,Строка(Мин2),"0" + Строка(Мин2)) + ":" + ?(Строка(Сек2)=2,Строка(Сек2),"0" + Строка(Сек2));
                    
                    ТекКод = ТЧ.Код;
                    ТекДата = ТЧ.ДатаСоб;
                    ТекТип = ТЧ.Тип;
                    
                ИначеЕсли ТЧ.Тип = "Приход" Тогда
                    
                    ТекКод = ТЧ.Код;
                    ТекДата = ТЧ.ДатаСоб;
                    ТекТип = ТЧ.Тип;
                    ТекВремя = ТЧ.Время;
                    
                КонецЕсли;
                
            Иначе
                
                Если ТекТип = "Приход" Тогда
                    
                    ТЧ2.НоваяСтрока();
                    ТЧ2.Филиал = ТЧ.Филиал;
                    ТЧ2.Код = ТекКод;
                    ТЧ2.ДатаСоб = ТекДата;
                    ТЧ2.Приход = ТекВремя;
                    ТЧ2.Уход = "0";
                    ТЧ2.КолОтрМин = "0";
                    
                    Час4 = Цел(Число(ТЧ2.Приход)/3600);
                    СекОстМин4 = Число(ТЧ2.Приход)%3600; 
                    Мин4 = Цел((Число(ТЧ2.Приход) - Час4*3600)/60);
                    Сек4 = СекОстМин4%60;
                    
                    ТЧ2.Приход = ?(СтрДлина(Строка(Час4))=2,Строка(Час4),"0" + Строка(Час4)) + ":" + ?(Строка(Мин4)=2,Строка(Мин4),"0" + Строка(Мин4)) + ":" + ?(Строка(Сек4)=2,Строка(Сек4),"0" + Строка(Сек4));
                    
                КонецЕсли;
                
                ТекКод = ТЧ.Код;
                ТекДата = ТЧ.ДатаСоб;
                ТекТип = ТЧ.Тип;
                
                Если ТЧ.Тип = "Приход" Тогда
                    
                    ТекВремя = ТЧ.Время;
                    
                Иначе
                    
                    ТЧ2.НоваяСтрока();
                    ТЧ2.Филиал = ТЧ.Филиал;
                    ТЧ2.Код = ТекКод;
                    ТЧ2.ДатаСоб = ТекДата;
                    ТЧ2.Приход = "0";
                    ТЧ2.Уход = ТЧ.Время;
                    ТЧ2.КолОтрМин = "0";
                    
                    Час3 = Цел(Число(ТЧ2.Уход)/3600);
                    СекОстМин3 = Число(ТЧ2.Уход)%3600; 
                    Мин3 = Цел((Число(ТЧ2.Уход) - Час3*3600)/60);
                    Сек3 = СекОстМин3%60;
                    
                    ТЧ2.Уход = ?(СтрДлина(Строка(Час3))=2,Строка(Час3),"0" + Строка(Час3)) + ":" + ?(Строка(Мин3)=2,Строка(Мин3),"0" + Строка(Мин3)) + ":" + ?(Строка(Сек3)=2,Строка(Сек3),"0" + Строка(Сек3));
                    
                КонецЕсли;
                
            КонецЕсли;
            
        КонецЕсли;  
        
    КонецЦикла;
    
    ТЧ2.Сортировать("Филиал,Код,ДатаСоб");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2017, 19:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос 1C 7.x Итоги по отработанному времени! (1С):

1C 7.x Бухгалтерские итоги - 1С
на сервер есть 2 базы одна старая другая новая в одной объекта создается в другой нет( в папки бин компонента Account.dll присутствует ...

Итоги в СКД - 1С
Сделал суммирование столбцов через вкладку Ресурсы в СКД. Подскажите пожалуйста, как убрать слово ИТОГО в конце таблицы, т.к. у него нельзя...

1C 8.x Бух Итоги - 1С
Добрый день подскажите пож. в 8.2 есть понятие бух итоги? к примеру как написать 7.7 код в 8.2 или тут нужно как то по другому мыслить? ...

1C 8.x (тонкий) Группировка и Итоги на СКД - 1С
Здравствуйте. Отчет на СКД. Строится кросс-таблица. В строках группировки по контрагентам и документам. В столбцах даты...

Сохранить итоги отчета - 1С
Здравствуйте, нужен совет как реализовать: есть форма документа, где есть табличная часть, куда часть данных подтягивается из...

1C 8.x Общие Итоги в выборке запроса - 1С
Подскажите пожалуйста, как можно чтобы при выводе общих итогов, они не отображались не в вверху общих данных, а в области итогов, которые я...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2017, 19:11
Привет! Вот еще темы с ответами:

1C 8.x Получить итоги из отчета СКД - 1С
Есть отчет в СКД,где формируются автоматически Общие итоги в столбцах(4 столбца).Можно ли выбрать эти итоги и вывести в отдельную таблицу?

1C 8.x Как убрать итоги в СКД - 1С
Доброго дня всем! Формирую отчет, получается, но хотела убрать Количество (на рис. отмечено "2"), натыкала до того, что получила...

Как посчитать итоги по каждой накладной - 1С
Доброго времени. Создал обработку, смысл в том что в ней указывается период и контрагент, затем нажимаю кнопку "Заполнить" и формируется...

1C 8.x СКД: не вычисляет итоги в некоторой колонке - 1С
Приветствую! Целый день убил, но так и не понял, почему внешний отчёт упорно отказывается считать итоги по колонке Конечный остаток....


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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