Имя: Пароль:
1C
1С v8
Помогите не могу понять ТЗ в ТЗ
, ,
0 Baikerl
 
20.12.13
15:22
Нужно из тз1 в тз 2 перенести строки и добавить колонки.
Смысл попробую сейчас обяъснить
в тз1 имеются строки
сотрудник            ЗПНачисленно ЗПВыплаченно АвансНач АвансВыплач  
иванов                   10000        
иванов                   5000
иванов                               10000
иванов                                          5000
иванов                                                    5000
петров
петров
петров
и т.д.
а в тз2 нужно принять такой вид
Иванов      ЗПНачислено  ЗПНачислено  ЗПВыплаченно АвансНач АвансВыпла
                10000       5000          10000       5000     5000

вот как то так
1 mikecool
 
20.12.13
15:23
при чем здесь тз в тз? тебе надо просто свернуть()
2 Fish
 
20.12.13
15:23
Ничего не понял.
3 Йохохо
 
20.12.13
15:24
если просто суммировать по фамилии, то она в шапку не попадает? в этом вопрос?)
4 Птица
 
20.12.13
15:24
открой для себя метод тз свернуть()
5 Ярус
 
20.12.13
15:25
тз2 = тз1.скопировать()

тз2.свернуть("сотрудник"," ЗПНачисленно,ЗПВыплаченно, АвансНач, АвансВыплач");
6 Baikerl
 
20.12.13
15:26
не то
7 Baikerl
 
20.12.13
15:26
щас попробую объяснить подробнее
8 Жан Пердежон
 
20.12.13
15:27
может у него функция максимум
9 Baikerl
 
20.12.13
15:33
есть колонки
зпначислено
зпвыплата
авансначисленно
авансвыплата
есть такие данные
сотрудник  ЗПНачисленно  ЗПВыплата  АвансНач  АвансВыпл
Иванов       10000
иванов       10000
Иванов                     15000     5000
иванов                               4000
Иванов
иванов                                          9000
А должно получаться

сотрудник начисленн1  начисленно2 выплата1 АНач1 Анач2 и т.д.

и данные могут меняться у кого то 2 раза начисли у кого то один но 3 раза аванс и т.д.
10 Baikerl
 
20.12.13
15:35
нет как я понял мне нужен поиск по строкам из тз1, а дальше проверять колонку и добавлять если ее нет
11 mikecool
 
20.12.13
15:35
теперь я точно ни.уя не понял
12 Baikerl
 
20.12.13
15:36
если код пришлю тогда вообще запутаешься))))
13 Серго62
 
20.12.13
15:36
(9) у тебя в результирующей тз количество колонок будет зависеть от количества строк с начислением в исходной таблице?
14 1Сергей
 
20.12.13
15:36
(9) т.е. тебе нужно сделать столько же колонкок, сколько строк в таблице? Нафейхуа?
15 Fish
 
20.12.13
15:37
(9) А если три раза начислили, то во второй таблице должно получиться три колонки начислено?
16 Серго62
 
20.12.13
15:37
+ (14) Поясни смысл этой затей.
17 Серый Пес
 
20.12.13
15:38
Если это разовое действие - то вообще будет проще в екселе сводными таблицами баловаться, кстати.
18 Baikerl
 
20.12.13
15:38
да
так хочет начальник, я по строкам все вывел но хочется ему именно так зарплату по сотрудникам развернуто по каждой цифорке
19 mikecool
 
20.12.13
15:38
1) сделать результирующую таблицу
2) бежать по таблице с данными и по условиям заполнять результат(если сразу не смог сделать правильную таблицу)
20 mikecool
 
20.12.13
15:39
(18) напиши отчет на скд
21 Baikerl
 
20.12.13
15:39
если бы разова бухи сами мы делали эту фигню уже давно
22 Fish
 
20.12.13
15:39
А вот какие колонки должны получится в итоге, если Иванову начисляли три раза, а Петрову - 4?
23 1Сергей
 
20.12.13
15:39
(18) не обязательно для этого делать такую нелепую ТЗ
24 Baikerl
 
20.12.13
15:39
с скд не выходит, я в нем плаваю как рыба в супе
25 Серго62
 
20.12.13
15:40
(18) у тебя перечень видов начислений фиксированный или каждый раз меняется?
26 Baikerl
 
20.12.13
15:40
ну ему хочется и что я поделаю сказали сделай и вот хоть лопни нужно сделать
27 НЕА123
 
20.12.13
15:40
как вариант
добавить колонки соотв. существующим. туда ставить 0 или 1 -нет или есть сумма.
свернуть.
найти максимальные - это количество колонок "начисленн".
упорядочить по фамилии.
ну и т.д.
28 Baikerl
 
20.12.13
15:41
щас скину код посмотрите что не так делаю
29 Baikerl
 
20.12.13
15:43
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
               |    ЗарплатаКВыплате.Сотрудник КАК Сотрудник,
               |    ЗарплатаКВыплате.Подразделение КАК Подразделение,
               |    ЗарплатаКВыплате.Организация КАК Организация,
               |    ЗарплатаКВыплате.ХарактерВыплаты КАК ХарактерВыплаты,
               |    ЗарплатаКВыплате.СуммаКВыплате КАК СуммаКВыплате,
               |    ЗарплатаКВыплате.ВидДвижения,
               |    ЗарплатаКВыплате.Регистратор КАК Регистратор,
               |    ЗарплатаКВыплате.Период КАК ДатаПериод
               |ИЗ
               |    РегистрНакопления.ЗарплатаКВыплате КАК ЗарплатаКВыплате
               |
               |УПОРЯДОЧИТЬ ПО
               |    ЗарплатаКВыплате.Сотрудник
               |ИТОГИ
               |    СУММА(СуммаКВыплате),
               |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Регистратор)
               |ПО
               |    Сотрудник";
30 Baikerl
 
20.12.13
15:43
а как дальше
31 Baikerl
 
20.12.13
15:45
Может мне во второй тз не описывать колонки? тогда как их сравнивать?
32 mikecool
 
20.12.13
15:47
(29) а менеджер зачем приплел?
33 mikecool
 
20.12.13
15:48
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
               |    ЗарплатаКВыплате.Сотрудник КАК Сотрудник,
               |    ЗарплатаКВыплате.ХарактерВыплаты КАК ХарактерВыплаты,
               |    ЗарплатаКВыплате.СуммаКВыплате КАК СуммаКВыплате,
|ИЗ
               |    РегистрНакопления.ЗарплатаКВыплате КАК ЗарплатаКВыплате
               |
пихаешь текст в компоновку, сотрудник по строкам, характер - по столбцам и все, готово в скд
34 Baikerl
 
20.12.13
15:49
щас попробую
35 Baikerl
 
20.12.13
15:50
Ошибка получения информации набора данных
по причине:
Ошибка в запросе набора данных
по причине:
{(1, 1)}: Ожидается выражение "ВЫБРАТЬ"
<<?>>Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
36 mikecool
 
20.12.13
15:56
убери "Запрос.Текст = ""
37 Baikerl
 
20.12.13
16:06
вот что получилось а как сделать это в одну строку

Язовских Оксана Александровна    
-10 000,00    Зарплата
10 000,00    Зарплата
40 000,00    Зарплата
10 000,00    Аванс
38 FIXXXL
 
20.12.13
16:07
(35) и все палочки :)
текст скопируй из конструктора запроса
39 mikecool
 
20.12.13
16:08
"зряплата" засунь в группировки стобцов
40 Baikerl
 
20.12.13
16:20
ок дальше разберусь подскажите плиз, как выбрать по периоду а то он не выбирает показывает пустую тз
41 Серго62
 
20.12.13
16:23
(40) Период МЕЖДУ &дата1 И &дата2
42 Baikerl
 
20.12.13
16:23
спс
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.