Приклади робочих скриптів у звітових формах

Геодезична інформаційна система 6 та Геодезична інформаційна система 6 Агро

Модератори: NickS, feNICKs

Аватар користувача
NickS
Повідомлень: 1393
З нами з: 04 квітня 2008, 12:21

Re: Вопросы по базам данных в отчётных формах.

Повідомлення NickS » 17 червня 2011, 15:09

TiJester писав:Возникла трудность в создании запроса который будет искать (отбирать) сервитуты по нескольким участкам. Участки выбираются как в подшивке
"Техническая документация для отмеченных участков 2010.fb3"

отбирать по значению к примеру [DM1.TbServitut."Area"]
далее соответственно суммирую площадь сервитутов. В итоге хотелось бы видит общую площадь по сервитутом для отобранных участков

Для этого лучше воспользоватся sql-запросами. Для создания базы DM1.QuerySQL, чтобы можно было на основе её сделать список или таблицу площадей:

Код: Виділити все

  QuerySQL('Select O.ID_Object, S.Area From Object O, Servitut S Where O.OK = ''þ'' And S.ID_Object = O.ID_Object And S.Area <> 0 Order by O.ID_Object');

Причём тут собираются только те сервитуты, в которых площадь просчитана и не равна нулю и упорядочено по участкам.

А чтобы просто узнать площадь всех сервитутов отмеченных участков, нужно выполнить такой запрос:

Код: Виділити все

  Query('Select Sum(S.Area) Area From Object O, Servitut S Where O.OK = ''ю'' And S.ID_Object = O.ID_Object');


И потом в программе выводим значение [DM1.Query."Area"] - это и будет та площадь.

terrakod
Повідомлень: 7
З нами з: 07 червня 2011, 21:29
Контактна інформація:

Re: Вопросы по базам данных в отчётных формах.

Повідомлення terrakod » 20 червня 2011, 13:47

как втянуть с окна "Камеральные функции" отображение в отчетную форму? Не могу розобратся. Подскажите!
P. S. Формирую свой шаблон

Аватар користувача
NickS
Повідомлень: 1393
З нами з: 04 квітня 2008, 12:21

Re: Вопросы по базам данных в отчётных формах.

Повідомлення NickS » 20 червня 2011, 14:45

terrakod писав:как втянуть с окна "Камеральные функции" отображение в отчетную форму? Не могу розобратся. Подскажите!
P. S. Формирую свой шаблон

Есть несколько способов:
1. Самый простой - уже сделан специальный объект в fr3. В панели с правой стороны нажмите кнопку "Категория ГИС" и выбрать "Объект "Участок"". Дальше рамочкой потянуть и сразу будет видно картинку из камеральных.
2. С помощью кода. Этот способ найболее правильный, но сложнее. Примеры вставки кода есть в шаблончиках, которые я прикрепляю.
.zip
Примеры отчётных форм
(9.28 Кіб) Завантажено 61 разів

terrakod
Повідомлень: 7
З нами з: 07 червня 2011, 21:29
Контактна інформація:

Re: Вопросы по базам данных в отчётных формах.

Повідомлення terrakod » 20 червня 2011, 18:45

СПАСИБО за помощь!!!

Аватар користувача
Serg
Повідомлень: 43
З нами з: 19 квітня 2011, 15:02
Звідки: г.Первомайский
Контактна інформація:

Re: Вопросы по базам данных в отчётных формах.

Повідомлення Serg » 01 липня 2011, 10:36

Подскажите пожалуйста, нигде не могу найти отчетную форму "плана встановлених меж", такая вообще существует???

Аватар користувача
NickS
Повідомлень: 1393
З нами з: 04 квітня 2008, 12:21

Re: Вопросы по базам данных в отчётных формах.

Повідомлення NickS » 01 липня 2011, 10:55

Serg писав:Подскажите пожалуйста, нигде не могу найти отчетную форму "плана встановлених меж", такая вообще существует???

Может Вы имеете ввиду "Описание границ земельного участка"? Такая есть.
Возможно "плана встановлених меж" есть, но не так называется.

Аватар користувача
Serg
Повідомлень: 43
З нами з: 19 квітня 2011, 15:02
Звідки: г.Первомайский
Контактна інформація:

Re: Вопросы по базам данных в отчётных формах.

Повідомлення Serg » 01 липня 2011, 13:02

NickS писав:
Serg писав:Подскажите пожалуйста, нигде не могу найти отчетную форму "плана встановлених меж", такая вообще существует???

Может Вы имеете ввиду "Описание границ земельного участка"? Такая есть.
Возможно "плана встановлених меж" есть, но не так называется.


На данном плане отображается участок без угодий с поворотными точками и промерами между ними..не могу найти помогите.. :oops:
и еще,никак не могу склонение фамилии землепользователя изменить в отчетных формах, везде идут в именительных падежах,как быть???

Аватар користувача
Denver
Повідомлень: 282
З нами з: 27 вересня 2010, 22:36
Звідки: Бровари

Re: Вопросы по базам данных в отчётных формах.

Повідомлення Denver » 01 липня 2011, 13:14

Serg писав:На данном плане отображается участок без угодий с поворотными точками и промерами между ними..не могу найти помогите.. :oops:

відключіть шар "план" :mrgreen:

З.І.Може Вам абрис треба? Чи може план перенесення меж земельної ділянки в натуру(на місцевість) :?

Аватар користувача
Serg
Повідомлень: 43
З нами з: 19 квітня 2011, 15:02
Звідки: г.Первомайский
Контактна інформація:

Re: Вопросы по базам данных в отчётных формах.

Повідомлення Serg » 01 липня 2011, 13:30

Denver писав:
Serg писав:На данном плане отображается участок без угодий с поворотными точками и промерами между ними..не могу найти помогите.. :oops:

відключіть шар "план" :mrgreen:

З.І.Може Вам абрис треба? Чи може план перенесення меж земельної ділянки в натуру(на місцевість) :?


отключить это самое простое,хочется ведь создать подшивку, в которой не нужно ничего включать и выключать,а одним нажатием печати все было в порядке..

"Креслення меж контурів угідь в розрізі землекористувачів" сделано в отдельном виде для каждого угодия,а нет ли сборного чертежа для всех угодий???

Аватар користувача
NickS
Повідомлень: 1393
З нами з: 04 квітня 2008, 12:21

Re: Вопросы по базам данных в отчётных формах.

Повідомлення NickS » 01 липня 2011, 15:12

Serg писав:На данном плане отображается участок без угодий с поворотными точками и промерами между ними..не могу найти помогите.. :oops:

Всё что Вы включите или отключите в камеральных функциях будет отображатся по-умолчанию в отчётных формах. Потому, если у Вас включен слой "план", отключите его и печатайте отчётную форму. Если же нужно в одной подшивке использовать одновременно разные настройки слоёв, то это можно осуществить с помощью специальных команд в скрипте. В этом случае, рисунок в отчётной форме должен прорисовыватся командой DrawWmf. Например:

Код: Виділити все

   with Picture1, Engine do
   begin
      DrawWmf(Width * 10 / (2560/6773), Height * 10 /(2560/6773), 0);
      Loadfromfile( StartPath +'\gis.wmf');
   end;


Для включения или отключения видимости нужного слоя используется функция VisibleGisLayer(n, x), где, n - номер слоя, а x - паремтр видимости
Номера слоев:
0 - участок
1 - план
2 - агрогруппы
3 - таблица расчётов
4 - обозначения
5 - ситуация
6 - чертёж
7 - каталог координат
8 - горизонтали
9 - оформление
10 - общий
11 - сервитуты
12 - ограничения
13 - аренда
14 - теодолитный ход
15 - карта
16 - проектные дороги
17 - сторонние земли
18 - секущая линия

Параметр видимости:
true - слой видимый
false - слой не видимый

В результате, чтобы на рисунке был отключён слоя "план", надо вставить эту функцию перед функцией рисования:

Код: Виділити все

   with Picture1, Engine do
   begin
      VisibleGisLayer(1, false);
      DrawWmf(Width * 10 / (2560/6773), Height * 10 /(2560/6773), 0);
      Loadfromfile( StartPath +'\gis.wmf');
   end;


Serg писав:и еще,никак не могу склонение фамилии землепользователя изменить в отчетных формах, везде идут в именительных падежах,как быть???

Где именно? Наведите пример кода. Есть специальные поля для других падежей, а есть даже специальные функции, которые сами будут склонять. Лутше, конечно, использовать поля со склонениями.