|
|
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Если ли какая-нибудь возможность определить тип (freeform, grid, ...) DataWindow из DWO binary source? Т.к. в текстовом исходном фале 'SRD' такой информации нету, она просто обязана быть где-то внури DWO, а вот где (по какому offset) понять не могу. Thanx in avdance! :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 01:09 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Processing DataWindow object property. А на будущее, пользуйтесь поиском PB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 01:20 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 09:21 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikЕсли ли какая-нибудь возможность определить тип (freeform, grid, ...) DataWindow из DWO binary source? Т.к. в текстовом исходном фале 'SRD' такой информации нету, она просто обязана быть где-то внури DWO, а вот где (по какому offset) понять не могу. В бинарнике: смещение 0x0190, тип INT16 На счет .SRD - как уже выше сказали, эта информация есть в datawindow( processing=...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 11:37 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyВ бинарнике: смещение 0x0190, тип INT16 А откуда такие познания? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 12:01 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Anatoly MoskovskyВ бинарнике: смещение 0x0190, тип INT16 А откуда такие познания? Посмотрел только что :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 12:04 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Спасибо за processing и за смешение :-) Но в моём случае задачу не решило, т.к. необходимо роспознать ТОЧНО тип DW, а processing (оно же 0x0190) показывеет '0' для: Form, group, query, or tabular. В то время как tabular это же почти Grid и принципиально по другому рендериться в отличие от freeform. Стало быть, либо есть еще одна проперти котороя точно указывает на тип DW (один из 11), либо есть какие-то негласные правила которые использует PB чтобы точно определить как рендерить DW с processing=0. Типа: если processing==0 но есть text(band=header ...) => это tabular. Буду признателен за любые идеи и информацию. Прикладываю два файла: - d_prod_type_master_maint.srd - откровенный grid, видимо tabular с processing=0 - d_prod_type_detail_maint.srd - freeform с processing=0, но с text(band=header ...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 18:56 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
d_prod_type_detail_maint.srd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 18:57 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmik wrote: > В то время как tabular это же почти Grid и принципиально по > другому рендериться в отличие от freeform. Не смешно. Freeform от tabular-а не отличается ничем, кроме дефолтного взаимного расположения объектов. > Стало быть, либо есть еще одна проперти котороя точно указывает на тип > DW (один из 11) Нет. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 19:09 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikНо в моём случае задачу не решило, т.к. необходимо роспознать ТОЧНО тип DW, а processing (оно же 0x0190) показывеет '0' для: Form, group, query, or tabular. Как уже было сказано, типы "Form, group, query, or tabular" - отличаются только на уровне работы визарда (это названия визарда), т.е. имеют смысл только перед созданием объекта. Созданный объект имеет тип из другого множества: 0 - FreeForm (он же Tabular) 1 - Grid 4 - Crosstab 5 - Composite остальные типы не помню Group может быть и в Grid и в FreeForm, анализируйте по наличию "group(" в синтаксисе Query - содержимое копируется визардом в DW и в дальнейшем теряется инф. о происхождении запроса FreeForm от Tabular можно отличить только по координатам и бэндам объектов (например если заголовки столбцов в band=detail, то скорее всего - freeform, band=header - tabular) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 19:26 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
мне вообще не смешно, наш application должен рендерить эти DW и разница в обработке freeform и tabular при этом принципиальная: 1. The Freeform presentation style presents data with the data columns going down the page and labels next to each column. Короче Label:InputField - обычно форма для ввода данных 2. The Tabular presentation style presents data with the data columns going across the page and headers above each column. As many rows from the database will display at one time as can fit in the DataWindow object. Да, вроде тоже самое, только Label сверху. Но это может паказывать '...As many rows...' и выглядит оно как Grid и соотвт обробатываться должно. btw, N-Up туда же. 1. и 2. реально по разному ведут себя в отношении presentation layer rendering. Предпологаю что если в processing=0 DW передёться DataSet c multiple rows то DW просто повторяет (копируя все column(band=detail) definitions and increments Y-coordinate) data field row наполняя каждый новый данными их соотв row из DataSet. Спасибо, Анатолий за valuable input. Именно такой алгоритм и использовал пока не встерил d_prod_type_detail_maint.srd c text(band=header) и processing=0 которая на самом деле FreeForm :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 19:49 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikнаш application должен рендерить эти DW и разница в обработке freeform и tabular при этом принципиальная Её нет, и тем более принципиальной. Кстати, что, по-твоему, на рисунке: freeform или tabular ;)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 20:08 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
так что, просто если у DW в DataSet есть multiple rows то оно (DW) просто копирует целиком соджержимое detail band встявляя новые данные из сделующей Dataset row? т.е. если даже если во FreeForm передать multiple rows то оно скопирует весь detail band (header на то и хедер чтобы не копировать, так?) со всеми labels вниз по Y и заполнит соотв данными? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 20:17 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikт.е. если даже если во FreeForm передать multiple rows то оно скопирует весь detail band (header на то и хедер чтобы не копировать, так?) со всеми labels вниз по Y и заполнит соотв данными? Угумс. К сожалению, более понятного скриншота нет под рукой, но в том, что я прицепил, в двух записях было разное поле "Счёт". А если вытянуть лейблы из detail в header и расположить данные в ряд, а не вразброс, - получится типичный tabular . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 20:52 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
вот оно, спасибо! DW Grid (processing type 1) как я понял вообще не редактируемая (editable) ad hoc reporting structure? а как раз с помощью freeform/tabular можно создавать подобие редактируемой таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 21:46 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikDW Grid (processing type 1) как я понял вообще не редактируемая (editable) ad hoc reporting structure? Хи-хи. Grid прекрасно редактируется. А при желании можно сделать редактируемым даже Crosstab ;). romankuzmikа как раз с помощью freeform/tabular можно создавать подобие редактируемой таблицы. Я предпочитаю для отчётов использовать tabular - красивше (ИМХО). ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 22:51 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikмне вообще не смешно, наш application должен рендерить эти DW и разница в обработке freeform и tabular при этом принципиальная: чтобы отличить tabular от freeform в качестве критерия удобно использовать отношение ширины dw к detail height. т.е. если ширина dw на порядок больше высоты detail то это с большой вероятностью tabular ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 01:00 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Dim2000Хи-хи. Grid прекрасно редактируется. А при желании можно сделать редактируемым даже Crosstab ;). В процессе внесения изменений в который PB громко упадет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 10:14 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Dim2000Хи-хи. Grid прекрасно редактируется. А при желании можно сделать редактируемым даже Crosstab ;). В процессе внесения изменений в который PB громко упадет Не факт, если Crosstab в статик моде... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 10:33 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
romankuzmikнаш application должен рендерить эти DW и разница в обработке freeform и tabular при этом принципиальная: 1. The Freeform presentation style presents data with the data columns going down the page and labels next to each column. Короче Label:InputField - обычно форма для ввода данных 2. The Tabular presentation style presents data with the data columns going across the page and headers above each column. As many rows from the database will display at one time as can fit in the DataWindow object. Да, вроде тоже самое, только Label сверху. Но это может паказывать '...As many rows...' и выглядит оно как Grid и соотвт обробатываться должно. btw, N-Up туда же. 1. и 2. реально по разному ведут себя в отношении presentation layer rendering. Предпологаю что если в processing=0 DW передёться DataSet c multiple rows то DW просто повторяет (копируя все column(band=detail) definitions and increments Y-coordinate) data field row наполняя каждый новый данными их соотв row из DataSet. В DW2XLS рендеринг всех типов DW в XLS делается одним алгоритмом (даже без параметров) - цикл по строкам данных с отрисовкой для каждой строки всех релевантных бэндов. Так что скорее всего Вы просто недостаточно понимаете принцип функционирования DW, поэтому не смогли отразить это в своем алгоритме. Спасибо, Анатолий за valuable input. Именно такой алгоритм и использовал пока не встерил d_prod_type_detail_maint.srd c text(band=header) и processing=0 которая на самом деле FreeForm :-( Что в detail ни одного text нет? Что же это за форма такая без подписей к полям :) Впрочем как я выше писал - это никакого значения для отрисовки DW не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 10:59 |
|
||
|
Как понять какой тип DataWindow из source file?
|
|||
|---|---|---|---|
|
#18+
в итоге пришел к правилу: if DW constructor has 'this.of_setrowselect(true);' (PFC pfc_u_dw.sru function) then freeform DW is Grid like component посмотрим как оно в нашем случае отработает :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 19:01 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=47&tid=1336797]: |
0ms |
get settings: |
19ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 141ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...