Имя: Пароль:
1C
1С v8
Вопрос по таблице значений
0 Djonny
 
02.11.12
14:59
http://hostingkartinok.com/show-image.php?id=39a563de0651f21b1c118fa293608e6b
собственно вопрос. как из свернуть ТЗ подобным образом
1 Reset
 
02.11.12
15:01
Свернуть строки не умеет конкатинировать (есть есть такое слово). Придется цикл писать
2 France
 
02.11.12
15:01
(1) конкатенация, а не кокатинация..
3 zladenuw
 
02.11.12
15:02
Может по контрагенту и адресдоставки. а вот поле собран/не собран.потому загрузить колонку
4 Reset
 
02.11.12
15:02
КонкатЕнинировать, ок
5 Reset
 
02.11.12
15:02
тьфу Конкатенировать
6 France
 
02.11.12
15:02
(1) запросом выбрать из ТЗ, провести конкатенацию, и радоваться жизни)))
7 Reset
 
02.11.12
15:03
(6) А запрос, типа, умеет? :)
8 Heckfy
 
02.11.12
15:04
А свернуть по столбцам 2-6 затем добавить колонку из заполнитьЗначения собран/не собран не вариант?
9 John83
 
02.11.12
15:05
(8) а если будет только "собран"?
10 Reset
 
02.11.12
15:05
Вариант, все равно же придется по свернутой цикл делать и искать куски в исходной
11 France
 
02.11.12
15:05
(7) а запрос можно уговорить))..
12 France
 
02.11.12
15:06
(7)            ВЫБРАТЬ
   Банки.Код + Банки.Наименование КАК Поле1
ИЗ
   Справочник.Банки КАК Банки
13 Reset
 
02.11.12
15:07
(11)
Выбрать СУМААПОЖАЛУЙСТА(Т.Стр) из Т
?
14 Heckfy
 
02.11.12
15:07
(9) Так то в первом столбце куча мала получается.... Может его убрать вообще.....
15 Reset
 
02.11.12
15:08
(12) Задачу то читал? Нужно не сложить, а свернуть :)
16 France
 
02.11.12
15:09
(15) мне показывать, как выполняется операция свертки для запроса?))
17 Reset
 
02.11.12
15:10
(16) Или шутка затянулась, или я перестал тебя понимать
18 Djonny
 
02.11.12
15:11
весь собственно вопрос в том, как же быть с состоянием сборки, эту колонку нельзя потерять)
19 GANR
 
02.11.12
15:12
(18) Вот так:

ВЫБРАТЬ
   ВЫБОР
       КОГДА Таблица.СостояниеСборки = "Собран"
               ИЛИ Таблица.СостояниеСборки = "Не собран"
           ТОГДА "Собран / Не собран"
       ИНАЧЕ ""
   КОНЕЦ КАК СверткаСборок,
   Таблица.Контрагент,
   МАКСИМУМ(Таблица.ДатаОтгрузки) КАК ДатаОтгрузки,
   СУММА(Таблица.СуммаДоставки) КАК СуммаДоставки,
   СУММА(Таблица.СуммаДокумента) КАК СуммаДокумента,
   МАКСИМУМ(Таблица.АдресДоставки) КАК АдресДоставки
ИЗ
   Таблица КАК Таблица

СГРУППИРОВАТЬ ПО
   ВЫБОР
       КОГДА Таблица.СостояниеСборки = "Собран"
               ИЛИ Таблица.СостояниеСборки = "Не собран"
           ТОГДА "Собран / Не собран"
       ИНАЧЕ ""
   КОНЕЦ,
   Таблица.Контрагент
20 pessok
 
02.11.12
15:13
(19) а если Собран/Не собран принимает еще 100500 разных вариантов?
21 France
 
02.11.12
15:13
(17) какая шутка то?? сгруппировать можно две строки в запросе?? при этом проведя конкатенацию  по одному из полей??
22 zladenuw
 
02.11.12
15:13
о. закладка
23 GANR
 
02.11.12
15:13
(20) Это ИДЕЯ, а уж каждый случай - индивидуален
24 Reset
 
02.11.12
15:15
(21) Отличаешь Сумма(Поле) от Поле1+Поле2 ?
25 France
 
02.11.12
15:27
(24) догадываюсь, что разные вещи.. проводи ликбез..
26 zladenuw
 
02.11.12
15:47
тб.ЗаполнитьЗначения("Собран/Не собран","Сборка");
       тб.Свернуть("Сборка,Клиент,АдресДоставки","суммаД,суммаДок");
27 GANR
 
02.11.12
15:51
(26) С "Адрес доставки" и "Дата" как быть?
28 GANR
 
02.11.12
15:51
МИНИМУМ или МАКСИМУМ брать надо, а это только запрос
29 Djonny
 
02.11.12
15:52
(26) в этом случае он будет разделять собрал и не собрал. а мне это нужно в одну стоку включить.
30 Ахиллес
 
02.11.12
15:53
Свернуть таблицу по 2-5 столбцы, потом добавить 1 столбец и заполнить его одним значением.
31 Djonny
 
02.11.12
15:57
(30)где брать это значение?
32 Ахиллес
 
02.11.12
15:59
(31) Свернуть первый столбец и в цикле сделать соединение строк.
Циклы научить писать в 1С или сам догадаешься?
33 France
 
02.11.12
15:59
(31) чем тебе 19 не угодил?
34 Ахиллес
 
02.11.12
16:01
(33) А если в таблице кроме "Собран / Не собран" будет ещё "Х.З." ?
35 France
 
02.11.12
16:01
(34) а если поменять немного запрос??
36 Ахиллес
 
02.11.12
16:03
(35) А если каждый юзер ещё каждый по значению добавит? А юзеров сотня... И каждый день новые значения будут добавлять...
37 Djonny
 
02.11.12
16:05
(33) собран\не собран это если два документа, а их может быть 4-5 и больше, в колонке состояние должно быть так:
собран\не собран\собран и т.д. по кол-ву одинаковых строк с ключом Контрагент, дата отгрузки, адрес доставки.
запросом можно так сделать разве7
38 zladenuw
 
02.11.12
16:06
(35) показывай запрос :).
39 Djonny
 
02.11.12
16:06
(32) если свернуть по столбцам 2 и 5, то как тогда потом по 1-му столбцу сворачивать? его же уже не будет в таблице? или я что-то не так понял
40 zladenuw
 
02.11.12
16:13
(39) какие возможны варианты 1 колонки ? любые или только 2 ?
41 Classic
 
02.11.12
16:15
СУММА(Различные ) покатит?
42 Djonny
 
02.11.12
16:18
Это перечисление. Вариантов 5 там.
Можно так сделать:
Если состояниесборки = Перечисление.СостояниеСборки.СборкаЗавершена
или состояниесборки = Перечисление.СостояниеСборки.отгрузка тогда
"+"
иначе
"-"
конецесли
43 DrunkAnimal
 
02.11.12
16:19
(6) да - это гениально, давайте все вычислять через запрос
44 zladenuw
 
02.11.12
16:31
(0) а у тебя какие идее ТС ?
можно если без запроса. метод найти строки. Ищем по тз. где клиент и адрес доставки. на сколько помню если удалить элемент в массиве то он будет удален и в тз. так что кури СП :)
45 Djonny
 
02.11.12
16:35
(44) можно и без запроса, все равно.
на счет идей.. за ними сюда обратился)
46 France
 
02.11.12
16:37
(43) это не гениальность, а текущие тенденции в среде 1С... расскажу для чего, если интересно..
47 zladenuw
 
02.11.12
16:38
(46) давай
48 France
 
02.11.12
16:39
(47) раз тут вначале "конкатенацию" вывели в эфир, то я выведу "масштабирование решений".. можно я дальше не продолжу?? остальное, если не лениво, можно найти в тырнете, если яндекс не отключен
49 zladenuw
 
02.11.12
16:43
(48) а не. сказал А, говори и Б.
нарыл. понял смысл.
Эффективный способ конкатенации строк в 1С
50 Reset
 
02.11.12
16:44
Текущие тенденции в 1С - это, не имея даже базовых понятий, говорить с умным видом "Текущие тенденции в 1С"
51 Djonny
 
02.11.12
16:45
это табличная часть документа. при выводе в макет, она выглядеть должна, как вторая таблица на рисунке.
может при выводе в макет как-то можно обработать?
52 zladenuw
 
02.11.12
16:47
(51) так ты тут о чем с тобой.
ты бы гуглил бы и нашел много интересного.
v8: v8: запрос - в одно поле выбрать наименование и код
53 zladenuw
 
02.11.12
16:47
(51) если это отчет. то колонка 1 должна быть строка. тогда получиться как ты хочешь
54 France
 
02.11.12
16:48
(50) хамло... или за конкатенацию обиделся??
55 France
 
02.11.12
16:49
54+ или ты вообще себя имел в виду, а не меня??
56 Djonny
 
02.11.12
16:50
(52) тут из разных строк таблицы значений нужно складывать, а не из одной
57 Reset
 
02.11.12
16:51
(51) Ответ в (10) и более развернуто в (32).
58 DrunkAnimal
 
02.11.12
16:59
(48) причем здесь масштабирование решений и таскание данных на сервер и назад, когда все под силу на клиенте обработать?
59 zladenuw
 
02.11.12
16:59
(58) а не проще все сделать на сервере. а на клиенте вывести макет ? ась
60 France
 
02.11.12
17:03
(58) так вопрос и не стоит о том, что можно или нельзя на клиенте... вопрос "как лучше"...  
и, если клиентом окажется какой нибудь планшет с вынь 7 на борту??
Программист всегда исправляет последнюю ошибку.