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

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

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

Аватар користувача
Vetaley
Повідомлень: 119
З нами з: 15 лютого 2010, 13:16
Звідки: ХарькОфф
Контактна інформація:

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

Повідомлення Vetaley » 30 травня 2011, 16:36

Круууть! Спасибочьки! получилось весьма гут!)))

shels_chorny
Повідомлень: 41
З нами з: 31 березня 2011, 15:17
Звідки: Кировоград
Контактна інформація:

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

Повідомлення shels_chorny » 30 травня 2011, 17:09

;)

Аватар користувача
Vetaley
Повідомлень: 119
З нами з: 15 лютого 2010, 13:16
Звідки: ХарькОфф
Контактна інформація:

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

Повідомлення Vetaley » 30 травня 2011, 17:35

Забыл предусмотреть вариант с поселковым советом:

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

 //---------------------------------------------------------------------------------------------------
   //Де знаходиться ділянка

   Teritor := '';
   MyAddress := '';

   //в нас.пункте
   MyAddress := <DM1.QbObject."Address">;

   if (<DM1.QbObject."ID_TypeLocation"> = 0) then
   begin
       Teritor := 'за адресою: ';
   end;
   //за пределом нас.пункта
   if (<DM1.QbObject."ID_TypeLocation"> = 1) then
   begin
       Teritor := 'на території ';
       MyAddress := Copy(MyAddress , 1, Pos('ька сільська рада', MyAddress)) + 'кої сільської ради' ;
       MyAddress := Copy(MyAddress , 1, Pos('ька селищна рада', MyAddress)) + 'кої селищної ради' ;
   end;
   //Район
   if LENGTH(Name_Region) > 0 then
   begin
     if Pos('ький ', Name_Region) > 0 then
       Teritor := Teritor + MyAddress + ' ' + Copy(Name_Region, 1, Pos('ький ', Name_Region)) + 'кого району '
     else
       if Pos('ний ', Name_Region) > 0 then
         Teritor := Teritor + MyAddress + ' ' + Copy(Name_Region, 1, Pos('ний ', Name_Region)) + 'ного району '
       else
         Teritor := Teritor + MyAddress  + ' ' + Name_Region + ' ';
   end;

   //Область
   if LENGTH(Name_Area) > 0 then
   begin
     if Pos('ька ', Name_Area) > 0 then
       Teritor := Teritor + Copy(Name_Area, 1, Pos('ька ', Name_Area)) + 'кої області'
     else
       Teritor := Teritor + Name_Area + ' ';
   end;
- как то кривовато получилось.... ((((

Аватар користувача
Vetaley
Повідомлень: 119
З нами з: 15 лютого 2010, 13:16
Звідки: ХарькОфф
Контактна інформація:

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

Повідомлення Vetaley » 30 травня 2011, 17:54

усе! разобрался:

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

//за пределом нас.пункта
   if (<DM1.QbObject."ID_TypeLocation"> = 1) then
   begin
       Teritor := 'на території ';
       if Pos('сільська', MyAddress) > 0 then
       MyAddress := Copy(MyAddress , 1, Pos('ька сільська рада', MyAddress)) + 'кої сільської ради'
        else
         if Pos('селищна', MyAddress) > 0 then
         MyAddress := Copy(MyAddress , 1, Pos('ька селищна рада', MyAddress)) + 'кої селищної ради' ;
           end;

я не волшебник, но учусь бістро!)))

shels_chorny
Повідомлень: 41
З нами з: 31 березня 2011, 15:17
Звідки: Кировоград
Контактна інформація:

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

Повідомлення shels_chorny » 31 травня 2011, 09:34

Не забывайте если вы желаете боле подробно ознакомится с принципами программирования или получить навыки вы можете обратится на
форум разработчиков фаст репорта http://www.fast-report.com/ru/forum/ ;)

Аватар користувача
Vetaley
Повідомлень: 119
З нами з: 15 лютого 2010, 13:16
Звідки: ХарькОфф
Контактна інформація:

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

Повідомлення Vetaley » 31 травня 2011, 10:14

Спасибо, конечно, но, к сожалению мне платят не за успехи в освоении фастрепорта, а за выдачу конкретно техничек. ((( Даже при большом желании я не смогу уделять учебе достаточное количество времени. Все навыки в основном приобретаются походу, при решении каких-нить определенных задач. Поэтому без Вас никак! ;)

vovasya
Повідомлень: 2
З нами з: 02 червня 2011, 17:38

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

Повідомлення vovasya » 02 червня 2011, 21:09

Подскажите, как в очёт вставить код целевого использования земель по КВЦНЗ, а то Держкомзем требует чтобы в експликации стояли уже нове кода.

Аватар користувача
TiJester
Повідомлень: 39
З нами з: 28 жовтня 2010, 12:20
Контактна інформація:

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

Повідомлення TiJester » 14 червня 2011, 15:28

vovasya писав:Подскажите, как в очёт вставить код целевого использования земель по КВЦНЗ, а то Держкомзем требует чтобы в експликации стояли уже нове кода.


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

[DM2.TbTypeUse."Number2"] [DM2.TbTypeUse."Name"]
(цільове призначення земель, в тому числі згідно з КВЦПЗ, з зазначенням коду)


Пр этом надо базу подключить DM2.TbTypeUse

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

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

Повідомлення NickS » 16 червня 2011, 11:52

TiJester писав:
vovasya писав:Подскажите, как в очёт вставить код целевого использования земель по КВЦНЗ, а то Держкомзем требует чтобы в експликации стояли уже нове кода.


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

[DM2.TbTypeUse."Number2"] [DM2.TbTypeUse."Name"]
(цільове призначення земель, в тому числі згідно з КВЦПЗ, з зазначенням коду)


Пр этом надо базу подключить DM2.TbTypeUse

Таблица указана верно, но она не будет работать правильно в большинстве случаев! Реальный код таков:

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

 NomKVCNZ  := '';
 NameKVCNZ := '';

 If LocateData( 'DM2.TbUses', 'ID_Uses', <DM1.TbUser."ID_Uses">) = True Then
 begin
    If RecordCount('DM2.TbUsesLnk') > 0 then
    begin
      DataFirst( 'DM2.TbUsesLnk');

      While DataEOF( 'DM2.TbUsesLnk') = False Do
      begin
        If LocateData( 'DM2.TbTypeUse', 'ID_TypeUse', GetValue('DM2.TbUsesLnk', 'ID_TypeUse')) = True Then
        begin
          NomKVCNZ  := NomKVCNZ + <DM2.TbTypeUse."Number2"> + ', ';
          NameKVCNZ := NameKVCNZ + <DM2.TbTypeUse."Name"> + ', ';
        end;

        DATANEXT( 'DM2.TbUsesLnk');
      end;
    end;

    NomKVCNZ  := Copy(NomKVCNZ, 1, Length(NomKVCNZ)-2);
    NameKVCNZ := Copy(NameKVCNZ, 1, Length(NameKVCNZ)-2);
 end;


+ нужно подключить таблици DM1.TbUser и DM2.TbTypeUse

Аватар користувача
TiJester
Повідомлень: 39
З нами з: 28 жовтня 2010, 12:20
Контактна інформація:

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

Повідомлення TiJester » 17 червня 2011, 14:21

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

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