Имя: Пароль:
1C
1С v8
Преобразовать данные в табличный двумерный массив
,
0 Сирано Де Бержерак
 
13.08.12
16:08
Подскажите пожалуйста - сам код....   мне нужно следующее:

Есть документ «Заказ покупателя» - в нём есть табличная часть «Товары» - в этой табличной части занесены например 100 строк ( в каждой строке есть «Наименование номенклатуры», «Характеристика номенклатуры» и «Количество»), мне необходимо преобразовать этот документ из 100 строк в двухмерный массив из 10 строк:
По горизонтали пусть располагается «Номенклатура» а по вертикали «Характеристика номенклатуры»  - а на пересечение их нужно занести значение «Кол-во»:

            Номенклатура 1    Номенклатура 2    Номенклатура 3    
Характеристика 1    15            
Характеристика 2            5
1 Rovan
 
гуру
13.08.12
16:20
(0) расскажи как ты сам хочешь начать...
2 Сирано Де Бержерак
 
13.08.12
16:23
(1)  - сначала надо всю табличную часть сгруппировать в определённый виртуальный массив(потому что порядок следования в табличной части хаотичный)    - а потом уже... поэлементно... вытаскивать из этого массива данные и заполнять эту виртуальную таблицу.  хуже другое.... понять как это сделать в 1С я знаю... (понимаю как формируются таблицы и заполняются печатные формы) - но прописать это ручками я не знаю как... хотя и понимаю что это можно сделать.... короче знания на 2+...
3 vvp91
 
13.08.12
16:30
(1) Ключевой вопрос здесь - а зачем?

(0) Массив не индексируется строковыми или ссылочными значениями, следовательно надо использовать что-то другое, что (в частности) может дать срез по индексу Номенклатура и по индексу Характеристика.
Как вариант использовать таблицу значений, с колонками именованными от номенклатуры, и строками идентифицированными характеристиками.

(2) Лучший вариант (по-моему) такой: оставить все как есть, определить и сформулировать проблему (почему это проблема) хаотичности порядка следования, напрямую сделать трансляцию в итоговую таблицу (без промежуточного двумерного массива).
4 Сирано Де Бержерак
 
13.08.12
16:35
проблема другая. есть документ - в нём 300 строк ( в каждой строке есть «Наименование номенклатуры», «Характеристика номенклатуры» и «Количество»)  - комплектовщику не очень удобно лазить по складу с 7-8 листами номенклатуры и собирать её. удобнее сделать сводную таблицу - 20х20  - где все 300 элементов поместятся на одной страничке.  вот в связи с этим эта проблемка и появилась.
5 Мимохожий Однако
 
13.08.12
16:37
Наконец-то выяснилось, что нужна погрузочная ведомость.
6 Сирано Де Бержерак
 
13.08.12
16:38
ну да. )))))))  просто знание о названии не помогает мне решить. ))) я решил пойти коротким путём ))) а получилось как обычно длинно )
7 Сирано Де Бержерак
 
13.08.12
16:46
и никто не помог :-(
8 Бледно Золотистый
 
13.08.12
16:49
СКД-Таблица?
9 Vakhrin
 
13.08.12
16:50
(8) +1
10 Сирано Де Бержерак
 
13.08.12
16:53
я не знаю что такое СКД табличка :-(
11 DrShad
 
13.08.12
16:54
Схема компоновки данных
12 Vakhrin
 
13.08.12
17:00
(10) тогда пиши на мыло или звони, сделаем )
контакты на сайте: мой_ник.com
13 Rovan
 
гуру
13.08.12
17:02
(2) попробуй создать для документа новую форму с таблицей значений (ТЗ)
в ТЗ программно создать колонки (характеристики)
и строки (номенклатуры)
14 Сирано Де Бержерак
 
13.08.12
17:07
(13)  - а это идея... сейчас попробую....
15 Сирано Де Бержерак
 
13.08.12
17:11
(13) проблема.....  даже если я и выведу эту форму.... так она же не для печати (((((((  короче всё фигово (((
16 DrShad
 
13.08.12
17:11
(15) ничего не фигово - СКД твое все
17 Rovan
 
гуру
13.08.12
17:13
(15) так это отчет нужен или форма ввода данных ?
18 DrShad
 
13.08.12
17:14
(17) ему шахматка нужна по товарам
19 Сирано Де Бержерак
 
13.08.12
17:15
это должен быть ПЕЧАТНЫЙ БЛАНК - для комплектовщика
20 Сирано Де Бержерак
 
13.08.12
17:15
(17)  дада  - именно шахматка. :-)
21 DrShad
 
13.08.12
17:16
(20) ну так изучай СКД
22 Сирано Де Бержерак
 
13.08.12
17:17
(((((((((((((((
23 Сирано Де Бержерак
 
13.08.12
17:17
что такое хоть это СКД  и с чем его едят?
24 DrShad
 
13.08.12
17:18
(23) ты (11) прочитал?
25 Сирано Де Бержерак
 
13.08.12
17:22
м.....  да я понимаю как их скомпоновать... можно просто запрос сделать...  и сгруппировать там всю таблицу...  я не знаю как потом её в печатную форму поместить.....
26 DrShad
 
13.08.12
17:24
(25) изучай CRL? там все просто
27 DrShad
 
13.08.12
17:24
Crl = СКД
28 Сирано Де Бержерак
 
13.08.12
17:28
(27)  ладно. пойду плакать. :-(
29 DrShad
 
13.08.12
17:30
(28) мож лучше СКД изучать
30 Сирано Де Бержерак
 
13.08.12
17:32
(29)  бестолку....  это время надо.... я не смогу ((((
31 Rovan
 
гуру
13.08.12
17:39
(25) кроме СКД есть еще ПостроительОтчета !
32 vvp91
 
13.08.12
17:49
(30) Для этой задачи на СКД надо 5 минут.
Вот здесь (http://1cskd.ru/2012/08/otchet-po-prodazham-s-razvorotam-po-tipam-cen/) описано, как сделать похожую задачу.
При желании там же можно найти еще примеры похожих задач.