Имя: Пароль:
1C
1С v8
Помогите сделать отчет.
,
0 slnes
 
24.08.17
08:02
Имеем регистр сведений:
* (реквизит) №Скважины - у каждой скважины свой номер
* (реквизит) Монтаж - булево, истина - монтаж насоса на скважину, ложь - демонтаж насоса со скважины.
* (измерение) №Насоса - у каждого насоса свой номер
* (реквизит) Дата монтажа либо де монтажа
* (ресурс) Часы - количество отработанных часов в момент монтажа  

Имеются скважины, на них установленны насосы, в регистре сведений информация о перемещении насосв по скважинам.
Насос ломается ставят другой, это нужно в отчете.
Помогите сделать такой отчет.

[URL=http://radikol.ru/][IMG]http://cdn1.savepice.ru/uploads/2017/8/24/9d3736151bbdb33157f760e1b1d20e58-full.jpg[/IMG][/URL]
134 igorPetrov
 
24.08.17
11:45
ТС слинял по тихому )))
135 Segate
 
24.08.17
11:46
(132) вот статейка. там все описано =) я когда-то именно с нее этот метод скомуниздил
136 Segate
 
24.08.17
11:46
137 Segate
 
24.08.17
11:47
(132) ты видимо взял всю таблицу, а потом наложил на нее отбор сверху по нужным скважинам, а надо сначала накладывать отбор, а потом соединять таблицу саму с собой
138 Saari
 
24.08.17
12:24
ТС что там по результату?
139 igorPetrov
 
24.08.17
12:28
(138) Он получил, что хотел и слинял.
140 slnes
 
24.08.17
12:35
(138) ключ пока забрали, вернут попробую
141 Saari
 
24.08.17
12:41
(140) когда предположительно вернут?
142 igorPetrov
 
24.08.17
12:46
(140) Свистишь))
143 slnes
 
25.08.17
05:43
(138) Если у скважины больше двух установленных насосов, номер скважины выводится сверху, а дальше выводятся просто пустые поля, так я умею. Еще раз напишу необходимо что бы скважина стояла по центру, даже если менялось два насоса, три насоса, 4 и тд.
Пока что никто не справился с, как вы говорите тривиальной задачей.
144 M-Mad
 
25.08.17
05:56
(143) А должны?
145 Velman
 
25.08.17
06:00
отож)
146 Saari
 
25.08.17
06:15
(143) покажи картинку ответа как надо если у скважины установлено несколько насосов.
Я ввел данные что у одной скважины несколько монтажные. И отчет вывел в разделе монтаж эти несколько записей в одной группе скважины.
Доп. Условие с несколькими насосами не понятно, покажи картинку.
147 igorPetrov
 
25.08.17
06:26
(144) Должны, ему же работу сдавать ))
148 igorPetrov
 
25.08.17
06:30
(143) А ни кто и не собирался для тебя справляться ))
149 0xFFFFFF
 
25.08.17
07:05
(143) Эти фердиперсово-извращенные форматы вывода данных нужны только менеджерам, которые страдают кретинизмом.
Все нормальные люди читают отчеты по форме (75) и не оправдывают свое слабоумие тем, что неправильно объединяются ячейки, выводятся не тем шрифтом и не с тем выравниванием.
Так и передай своему преподу :)
150 Мимохожий Однако
 
25.08.17
07:11
(149) Он и есть препод.
151 slnes
 
25.08.17
07:14
(146) но изначально проблема в том, что нужно насос нужно вывести по центру, как на картинке в начале. № насоса 222222 стоит по центру.
152 igorPetrov
 
25.08.17
07:17
(151) Это не проблема, это хрень.
153 igorPetrov
 
25.08.17
07:18
(151) Ты правда такой или притворяешься? Народ троллишь?
154 Мимохожий Однако
 
25.08.17
07:24
(151) после объединения дай команду "по центру"
155 Маркусс
 
25.08.17
07:42
(143)лососни тунца
156 Маркусс
 
25.08.17
07:44
(143) рассказ "волшебное слово" прочти пока ключ не вернули
157 mehfk
 
25.08.17
07:44
158 Saari
 
25.08.17
08:02
(151) дык в макете сделай в ячейке, в которую выводится насос, выравнивание по центру.
(143) покажи картинку как надо в этом условии.
159 Маркусс
 
25.08.17
08:17
(158) дядька, тебе заняться нечем, кроме как оборзевшего двоечника за уши тянуть? ничему же не научится. кроме как халявы требовать
160 FIXXXL
 
25.08.17
08:25
(88) Скважина то не по центру! А за это 13-е депримирование :)
161 slnes
 
25.08.17
08:55
(158) ну картинка же есть в начале темы, там от номера скважины 222222 сверху и снизу одинаковое расстояние.
Разместить в средней ячейке не получится т.к. ячейки может быть и две
162 igorPetrov
 
25.08.17
08:55
(161) Ты дебил?
163 igorPetrov
 
25.08.17
08:58
Я конешно извиняюся за слова не толерантные, но придел же бывает? ))
164 Saari
 
25.08.17
08:59
(161) расстояния в ячейке определяются форматом ячейки в макете отчета. В данной ветке форума приведен код формирования отчета и вывод в макет.
Сам макет в этой ветке форума не представлен.
Но если ты говоришь, что программировать умеешь, то макет нарисовать в конфигураторе минутное дело. Иначе как же ты код отчета вставляешь в модуль формы чтобы отчет выполнился?
165 Saari
 
25.08.17
09:00
(161) ты вообще сформировал отчет по нашим подсказкам? Что у тебя получилось? Покажи результат работы нашего отчета в виде картинки как в первом твоем сообщении.
166 igorPetrov
 
25.08.17
09:01
(164) Да троллит он просто всех.
167 LuciferArh
 
25.08.17
09:03
(164) Не умеет он код вставлять. Он же по насосам специалист. Вставить, вынуть...
168 slnes
 
25.08.17
09:18
(161) вот что выведет ваш код
<a href="http://savepice.ru"; target="_blank"><img src="http://cdn1.savepice.ru/uploads/2017/8/25/f38cf7460d78a0cbbb4a32b4acb16971-full.jpg"; border="0"/></a>
169 slnes
 
25.08.17
09:18
170 Saari
 
25.08.17
09:20
(169) УРА! Значит код без ошибок.
В макете сделай для ячеек с насосами выравнивание по центру (так же как и в ячейках со скважинами). Аналогично и для других ячеек.
И снова покажи картинку.
171 slnes
 
25.08.17
09:24
(170) Т.е. ты думаешь в этом проблема. Теперь открой две картинки распечатай приложи к окну, посмотри на скважину 222222, есть разница
172 Saari
 
25.08.17
09:25
(171) да, в колонке, в которой выводятся скважины нет объединения ячеек с одинаковым значением скважины. Это я увидел. Попытаюсь объединить программно. Если получится - сообщу.
173 slnes
 
25.08.17
09:25
Я ошибся написал вместо скважина насос и все, как выравнивать в ячейке и писать такой код я знаю.
174 Мимохожий Однако
 
25.08.17
09:27
(171) Куда приложить?
175 slnes
 
25.08.17
09:27
(172) ну слава богу прозрел, пихает мне элементарный код. Я сделал с перебором по группировкам. Этот код не проверял и так ясно что он выведет
176 igorPetrov
 
25.08.17
09:28
(173) Врешь, не знаешь.
177 M-Mad
 
25.08.17
09:28
(171) Забей на него, давай лучше я тебе более интересных задач накидаю.
178 M-Mad
 
25.08.17
09:29
(177) к (172)
179 slnes
 
25.08.17
09:29
(177) ты эту реши сначала
180 slnes
 
25.08.17
09:30
А то отчет элементарный а сделать никто не может
181 M-Mad
 
25.08.17
09:30
(179) Бюджет?
182 igorPetrov
 
25.08.17
09:31
(180) Толстый , уже скучно.
183 slnes
 
25.08.17
09:32
(181) ты для себя реши я объединением сделал уже
184 slnes
 
25.08.17
09:32
подсказали ранее
185 Saari
 
25.08.17
09:32
(175) да ты чо! В таком случае в самом первом сообщении надо было спросить как объединить ячейки программно!
А мы тут код вышиваем вручную....
(180) не отчет сделать, а объединить программно ячейки. Разницу в постановке понимаешь?
186 Маркусс
 
25.08.17
09:32
(180) 500 рублей. забаньте уже это быдло
187 Saari
 
25.08.17
09:33
(184) покажи код объединения ячеек.
И вообще, покажи код отчета.

И вообщевообще, если все работает уже, что чем мы тут занимаемся?
188 Saari
 
25.08.17
09:34
(177) сложные задачи? ))
189 slnes
 
25.08.17
09:34
(187) вы спрашиваете я отвечаю
190 Saari
 
25.08.17
09:36
(189) т.е. мы тебя заставили задать нам задачу по написанию отчета?... )))
191 igorPetrov
 
25.08.17
09:36
(186) +100500 Он все пределы перешел
192 Saari
 
25.08.17
09:37
Короче... покажи нам код отчета с объединением ячеек и тему можно закрывать (раз есть результат, который принял ТС).
193 slnes
 
25.08.17
09:37
(190) я дргую задачу давал, не знаете не надо отвечать
194 slnes
 
25.08.17
09:38
(192) ну нет сказали тривиальная решайте сами
195 LuciferArh
 
25.08.17
09:40
(193)-(194) Ты не борзей... Тебе помогают, а ты хамишь.
196 igorPetrov
 
25.08.17
09:49
(194) Да нам это нафиг не надо ))
197 Saari
 
25.08.17
09:54
вот, получилось. Часть кода замени у себя на этот:

    //Вывод данных
    ТабДокумент = Новый ТабличныйДокумент;
    Макет        = ПолучитьМакет("НашМакетАренда");
    ОблШапка     = Макет.ПолучитьОбласть("Шапка");
    ОблДанные    = Макет.ПолучитьОбласть("Данные");
    
    ТабДокумент.Вывести(ОблШапка);
    
    Ном = 0;
    НомерСтрокиДляОбъединения = 5;
    НачальныйНомерСтрокиДляОбъединения = 5;
    СтарыйНомерСкважины = "~~~";
    Для Каждого Стр Из ТЗ Цикл
        
        Если СтарыйНомерСкважины <> Стр.НомерСкважины Тогда
            Если СтарыйНомерСкважины <> "~~~" Тогда
                ТекстОбластиЯчеекДляОбъединения1 = "R" + Строка(НачальныйНомерСтрокиДляОбъединения) + "C1:R" + Строка(НомерСтрокиДляОбъединения-1) + "C1";
                ТекстОбластиЯчеекДляОбъединения2 = "R" + Строка(НачальныйНомерСтрокиДляОбъединения) + "C2:R" + Строка(НомерСтрокиДляОбъединения-1) + "C2";
                ОбластьОбъединения1 = ТабДокумент.Область(ТекстОбластиЯчеекДляОбъединения1);
                ОбластьОбъединения2 = ТабДокумент.Область(ТекстОбластиЯчеекДляОбъединения2);
                ОбластьОбъединения1.Объединить();
                ОбластьОбъединения2.Объединить();
                НачальныйНомерСтрокиДляОбъединения = НомерСтрокиДляОбъединения-1;
            КонецЕсли;
            Ном = Ном + 1;
            ОблДанные.Параметры.ПечНом = Ном;
            ОблДанные.Параметры.ПечСкважина = Стр.НомерСкважины;
        Иначе
            ОблДанные.Параметры.ПечНом = "";
            ОблДанные.Параметры.ПечСкважина = "";
        КонецЕсли;
        
        ОблДанные.Параметры.ПечНасосД = Стр.ДНомерНасоса;
        ОблДанные.Параметры.ПечДатаД = Стр.ДДатаМД;
        ОблДанные.Параметры.ПечЧасыД = Стр.ДЧасы;
        
        ОблДанные.Параметры.ПечНасосМ = Стр.МНомерНасоса;
        ОблДанные.Параметры.ПечДатаМ = Стр.МДатаМД;
        ОблДанные.Параметры.ПечЧасыМ = Стр.МЧасы;

        ТабДокумент.Вывести(ОблДанные);
        
        НомерСтрокиДляОбъединения = НомерСтрокиДляОбъединения + 1;
        СтарыйНомерСкважины = Стр.НомерСкважины;
        
    КонецЦикла;
    ТекстОбластиЯчеекДляОбъединения1 = "R" + Строка(НачальныйНомерСтрокиДляОбъединения+1) + "C1:R" + Строка(НомерСтрокиДляОбъединения-1) + "C1";
    ТекстОбластиЯчеекДляОбъединения2 = "R" + Строка(НачальныйНомерСтрокиДляОбъединения+1) + "C2:R" + Строка(НомерСтрокиДляОбъединения-1) + "C2";
    ОбластьОбъединения1 = ТабДокумент.Область(ТекстОбластиЯчеекДляОбъединения1);
    ОбластьОбъединения2 = ТабДокумент.Область(ТекстОбластиЯчеекДляОбъединения2);
    ОбластьОбъединения1.Объединить();
    ОбластьОбъединения2.Объединить();
    
    ТабДокумент.ОриентацияСтраницы  = ОриентацияСтраницы.Портрет;
    ТабДокумент.ОтображатьЗаголовки = Ложь;
    ТабДокумент.ОтображатьСетку     = Ложь;
    ТабДокумент.Защита              = Ложь;
    ТабДокумент.ТолькоПросмотр      = Истина;
    ТабДокумент.АвтоМасштаб = Истина;
    ТабДокумент.Показать();
198 LuciferArh
 
25.08.17
09:55
(197) Вот же ты терпеливый...
199 Saari
 
25.08.17
09:57
И внимание! В макете шапка имеет 4 строки, строка с данными занимает в макете одну строку. Начинается, следовательно,с  5-й. Данный код объединяет первую колонку и вторую (с номером по порядку и с названием скважины).
И обязательно покажи результат!!!
200 slnes
 
25.08.17
09:58
Тогда и (162) забанте, я никого не оскорблял.
201 Saari
 
25.08.17
09:58
Этот отчет какое-то вязание крючком ))
202 K1RSAN
 
25.08.17
09:59
Пятница такая пятница.
Вот чисто интересно, я в голове вижу следующую картину, как это можно сделать (алгоритм).
Запросом делаем выборку с нужными данными. Можно сгруппировать, а можно просто вообще в наглую отсортировать по номеру скважины.
сделать макет с областями и указанными параметрами.
Завести какой-нибудь счетчик (для первой графы)
По циклу проходить всю выборку. Пока номер скважины не меняется - просто клепать область с данными. Как только номер меняется - делаем объединение ячеек с номером скважины и номером счетчика, счетчик увеличиваем, настраиваем "ГраницаСнизу" потолще.
Я правильно мыслю?
203 Saari
 
25.08.17
09:59
(200) обязательно покажи результат!
204 Saari
 
25.08.17
09:59
(200) в (162) был вопрос )))
205 igorPetrov
 
25.08.17
09:59
(200) Твоё поведение уже оскорбление. Хамло.
206 Saari
 
25.08.17
10:00
(202) вообще-то все уже сделано )))
207 igorPetrov
 
25.08.17
10:01
(204) Да, он на него не ответил ))
208 Saari
 
25.08.17
10:03
(200) переписывай код, мы ждем результат!
209 slnes
 
25.08.17
10:04
(203) не будет результатов, всем спасибо до свидания. Меня об-ли и ещё и забанили, настроения нет.
210 _stay true_
 
25.08.17
10:06
(209) Кажется, у кого-то опять ПМС
211 IvaneS
 
25.08.17
10:06
(206) это сколько тонн терпения вмещается в вас?
212 Saari
 
25.08.17
10:08
(209) даже тем, кто тебе помогал не покажешь???
213 Saari
 
25.08.17
10:09
(209) как же тебя забанили, если ты написал это сообщение?
214 Saari
 
25.08.17
10:16
Фееричная тема, однако...
215 igorPetrov
 
25.08.17
10:34
Он получил что хотел. Поиздевался над  народом. И свалили.
216 IvaneS
 
25.08.17
10:57
(214) а (0) случайно не для тебя задачу писал? или показалось... такое чувство, что ты знал)))
217 Saari
 
25.08.17
11:01
(216) нет, не для меня. я знать не знаю кто это.
218 IvaneS
 
25.08.17
11:11
(217) У ТС "Обида" сожрала "Благодарность", а может последнего не было.
219 Saari
 
25.08.17
11:31
(218) "Обида" за что? Даже если его обидели, то благодарность должна быть к помогающим.
220 Мимохожий Однако
 
25.08.17
11:35
(219) Не жди благодарности.© ))
221 Saari
 
25.08.17
11:40
(220) хотелось бы посмотреть на результат, который получит ТС. Промежуточный результат он показал. В нем осталось объединить одинаковые ячейки в первых двух колонках. Мы ему написали как это сделать.  Хочется после этого посмотреть на результат.
222 Мимохожий Однако
 
25.08.17
11:43
(221) Эк тебя зацепило
223 Saari
 
25.08.17
11:46
(222) раз в глаза не получается посмотреть, так пусть результат показывает )))
224 Saari
 
25.08.17
11:48
Тут уже, наверное, дело принципа.
Он на просвет (на окне) сравнивал отчеты. И показывал, что это не так. Ему сделали так, как он говорил. И вот что он теперь скажет?
Думаю, что ничего не скажет, ибо результат даже на просвет одинаков.
225 Мимохожий Однако
 
25.08.17
11:50
(224)Дело не в отчёте...
226 JS d00d
 
25.08.17
12:02
жесть, Saari , тебе скучно ?)
да и какой смысл помогать быдлу
227 Кукурузина
 
25.08.17
12:04
(0) ну что помогли то хоть? Это особенность данного форума, напишут 100500 сообщений, обо всем, а помощи так и не будет
228 Saari
 
25.08.17
12:07
(226) просто было время и я смог написать отчет по заданию. А про "спасибо" это выяснилось потом.
(227) да! в ветке есть готовое решение. Можно проверить.
229 Segate
 
25.08.17
13:53
(228) чуваааак, твои методы работы с макетами - просто жесть xD Программно объединять ячейки - это же ппц ) Научу работать с макетами - дорого ) В моем варианте достаточно было просто в условном оформлении ткнуть формат ячейки и все =) Для меня слишком сложно что-то там программно объединять )))
230 Saari
 
25.08.17
13:56
(229) а за просто так, всмысле бесплатно, научишь? Можешь прислать пример этого отчета но с твоим макетом?
231 _stay true_
 
25.08.17
14:06
Чуваки и чувихи, вам не надоело?))
232 Saari
 
25.08.17
14:13
(231) не надоело что? общаться? отчет писАть?
С отчетом мы закончили ))
233 _stay true_
 
25.08.17
14:18
(232)  Вот я как-раз про отчет)))
А пообщаться всегда хорошо)