Звіти в ГІС 6

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

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

chzemlemir
Повідомлень: 71
З нами з: 25 листопада 2016, 11:43

Re: Отчеты в GIS6

Повідомлення chzemlemir » 25 квітня 2017, 17:29

NoViChoK писав:Підкажіть як в шаблоні "Акт приёмо-передачи межевых знаков 2013" відмінусувати перші 7 знаків перемінної [MejnZN."MarkNumber"] ?
Тобто щоб в шаблоні відображало не "2017.04-000-00016" , а наприклад так " ____________ -000-00016"

І тримати додатковий шаблон, краще виставляти 2017.08-00016 або задавать рік та місяць"_____" "__"

Аватар користувача
NoViChoK
Повідомлень: 140
З нами з: 10 вересня 2012, 18:09

Re: Отчеты в GIS6

Повідомлення NoViChoK » 25 квітня 2017, 19:25

chzemlemir писав:
NoViChoK писав:Підкажіть як в шаблоні "Акт приёмо-передачи межевых знаков 2013" відмінусувати перші 7 знаків перемінної [MejnZN."MarkNumber"] ?
Тобто щоб в шаблоні відображало не "2017.04-000-00016" , а наприклад так " ____________ -000-00016"

І тримати додатковий шаблон, краще виставляти 2017.08-00016 або задавать рік та місяць"_____" "__"

З датами не можна. Пишуть, що оскільки межові знаки встановлюються після затвердження проекту то рік та місяц з номерів межових знаків теж потрібно видалити. Я б цей акт взагалі не вставляв але ж почнуть писати, що згідно ст. 50 закону про землеустрій проект повинен включати акт приймання-передачі межових знаків на зберігання. От і мудрую тепер :)

Аватар користувача
NoViChoK
Повідомлень: 140
З нами з: 10 вересня 2012, 18:09

Re: Отчеты в GIS6

Повідомлення NoViChoK » 26 квітня 2017, 15:17

Підскажіть ще раз :) Півдня мучивсь і зря.
Як зробити щоб перемінна "MarkInfo2" теж відображала номери знаків так " ____________ -000-00016" (сам текст та структуру тексту не потрібно міняти)
По аналогії з прикладом вище не виходить у мене. Пише несумісні типи... Кину весь код на всяк випадок

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

    procedure DetailData9OnBeforePrint(Sender: TfrxComponent);
    Var
       idPoint,  N1, N2 : Integer;
       L1, L2: Double;
       MarkNum1, MarkNum2: String;
    begin
        MarkInfo  := '';
        MarkInfo2 := '';
        MarkNum1  := '';
        MarkNum2  := '';

        If LocateData( 'DM1.TbPoint', 'ID_Point', <MejnZN."ID_Point">) Then
        Begin
           idPoint := <DM1.TbPoint."ID_Point">;

           If <DM1.TbPoint."SortNumber"> = 1 Then
              Begin
                 DataNext( 'DM1.TbPoint');

                 L1 := <DM1.TbPoint."LenLine">;
                 N1 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum1 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 DataLast( 'DM1.TbPoint');
                 L2 := <DM1.TbPoint."LenLine">;

                 DataPrior( 'DM1.TbPoint');
                 N2 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum2 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 MarkInfo2 := 'Межовий знак розташований на відстані ' + FormatFloat( '0.00', L1) + ' м.' +
                              ' від знаку № '+IIF( MarkNum1<>'', MarkNum1, IntToStr( N1)) +' та ' + FormatFloat( '0.00', L2) + ' м.' + ' від знаку № '+ IIF( MarkNum2<>'', MarkNum2, IntToStr( N2));
              End
           Else
              If Not DataEOF( 'DM1.TbPoint') Then
              Begin
                 L2 := <DM1.TbPoint."LenLine">;
                 DataPrior( 'DM1.TbPoint');
                 N2 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum2 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 LocateData( 'DM1.TbPoint', 'ID_Point', IntToStr( idPoint));
                 DataNext( 'DM1.TbPoint');

                 L1 := <DM1.TbPoint."LenLine">;
                 N1 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum1 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 MarkInfo2 := 'Межовий знак розташований на відстані ' + FormatFloat( '0.00', L1) + ' м.'+
                              ' від знаку № '+IIF( MarkNum1<>'', MarkNum1, IntToStr( N1)) +' та ' + FormatFloat( '0.00', L2) + ' м.'+' від знаку № '+ IIF( MarkNum2<>'', MarkNum2, IntToStr( N2));
              End;
        End;
    end;

chzemlemir
Повідомлень: 71
З нами з: 25 листопада 2016, 11:43

Re: Отчеты в GIS6

Повідомлення chzemlemir » 26 квітня 2017, 16:03

NoViChoK писав:
chzemlemir писав:
NoViChoK писав:Підкажіть як в шаблоні "Акт приёмо-передачи межевых знаков 2013" відмінусувати перші 7 знаків перемінної [MejnZN."MarkNumber"] ?
Тобто щоб в шаблоні відображало не "2017.04-000-00016" , а наприклад так " ____________ -000-00016"

І тримати додатковий шаблон, краще виставляти 2017.08-00016 або задавать рік та місяць"_____" "__"

З датами не можна. Пишуть, що оскільки межові знаки встановлюються після затвердження проекту то рік та місяц з номерів межових знаків теж потрібно видалити. Я б цей акт взагалі не вставляв але ж почнуть писати, що згідно ст. 50 закону про землеустрій проект повинен включати акт приймання-передачі межових знаків на зберігання. От і мудрую тепер :)

не страдайте єрундой, зробіть як я сказав і відправте ще раз попаде до іншого. А Ви свій час зря тратите

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

Re: Отчеты в GIS6

Повідомлення NickS » 26 квітня 2017, 17:20

NoViChoK писав:Підскажіть ще раз :) Півдня мучивсь і зря.
Як зробити щоб перемінна "MarkInfo2" теж відображала номери знаків так " ____________ -000-00016" (сам текст та структуру тексту не потрібно міняти)
По аналогії з прикладом вище не виходить у мене. Пише несумісні типи... Кину весь код на всяк випадок

По-перше, добавте таблицю "DM1.QiLandMark", щоб не використовувати додаткові функції для отримання значень. По-друге, код виправив:

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

    procedure DetailData9OnBeforePrint(Sender: TfrxComponent);
    Var
       idPoint,  N1, N2 : Integer;
       L1, L2: Double;
       MarkNum1, MarkNum2: String;
    begin
        MarkInfo  := '';
        MarkInfo2 := '';
        MarkNum1  := '';
        MarkNum2  := '';

        If LocateData( 'DM1.TbPoint', 'ID_Point', <MejnZN."ID_Point">) Then
        Begin
           idPoint := <DM1.TbPoint."ID_Point">;

           If <DM1.TbPoint."SortNumber"> = 1 Then
              Begin
                 DataNext( 'DM1.TbPoint');

                 L1 := <DM1.TbPoint."LenLine">;
                 N1 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum2 := '____________' + Copy(<DM1.QiLandMark."MarkNumber">, 8, Length(<DM1.QiLandMark."MarkNumber">) - 7);

                 DataLast( 'DM1.TbPoint');
                 L2 := <DM1.TbPoint."LenLine">;

                 DataPrior( 'DM1.TbPoint');
                 N2 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum2 := '____________' + Copy(<DM1.QiLandMark."MarkNumber">, 8, Length(<DM1.QiLandMark."MarkNumber">) - 7);

                 MarkInfo2 := 'Межовий знак розташований на відстані ' + FormatFloat( '0.00', L1) + ' м.' +
                              ' від знаку № '+IIF( MarkNum1<>'', MarkNum1, IntToStr( N1)) +' та ' + FormatFloat( '0.00', L2) + ' м.' + ' від знаку № '+ IIF( MarkNum2<>'', MarkNum2, IntToStr( N2));
              End
           Else
              If Not DataEOF( 'DM1.TbPoint') Then
              Begin
                 L2 := <DM1.TbPoint."LenLine">;
                 DataPrior( 'DM1.TbPoint');
                 N2 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum2 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 LocateData( 'DM1.TbPoint', 'ID_Point', IntToStr( idPoint));
                 DataNext( 'DM1.TbPoint');

                 L1 := <DM1.TbPoint."LenLine">;
                 N1 := <DM1.TbPoint."Number">;

                 If LocateData( 'DM1.QiLandMark', 'ID_LandMark', <DM1.TbPoint."ID_LandMark">) Then
                    MarkNum1 := DValue( 'DM1.QiLandMark', 'MarkNumber');

                 MarkInfo2 := 'Межовий знак розташований на відстані ' + FormatFloat( '0.00', L1) + ' м.'+
                              ' від знаку № '+IIF( MarkNum1<>'', MarkNum1, IntToStr( N1)) +' та ' + FormatFloat( '0.00', L2) + ' м.'+' від знаку № '+ IIF( MarkNum2<>'', MarkNum2, IntToStr( N2));
              End;
        End;
    end;

chzemlemir
Повідомлень: 71
З нами з: 25 листопада 2016, 11:43

Re: Отчеты в GIS6

Повідомлення chzemlemir » 04 травня 2017, 00:29

FILTERDATA('DM1.QbObject', 'OK = ''ю'''); //Фильтруем по отмеченным
чи можливо(як) фільтрувати вибрані земельні ділянки?

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

Re: Отчеты в GIS6

Повідомлення NickS » 04 травня 2017, 09:06

chzemlemir писав:FILTERDATA('DM1.QbObject', 'OK = ''ю'''); //Фильтруем по отмеченным
чи можливо(як) фільтрувати вибрані земельні ділянки?

Ні. Вибрані можна відфільтрувати лише в самій програмі. Ви можете хібащо вибраним тимчасово присвоїти якийсь колір маркіровки, а потім по ньому відфільтрувати таблицю.

chzemlemir
Повідомлень: 71
З нами з: 25 листопада 2016, 11:43

Re: Отчеты в GIS6

Повідомлення chzemlemir » 05 травня 2017, 12:26

Де можна знайти суміжників в пояснювальну якщо ділянок більше однієї?

chzemlemir
Повідомлень: 71
З нами з: 25 листопада 2016, 11:43

Re: Отчеты в GIS6

Повідомлення chzemlemir » 05 травня 2017, 13:10

chzemlemir писав:Де можна знайти суміжників в пояснювальну якщо ділянок більше однієї?

чи скільки це коштує(можна в лс), чи де можна почитать, але так щоб не звезти 2 дня

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

Re: Отчеты в GIS6

Повідомлення NickS » 05 травня 2017, 17:37

chzemlemir писав:
chzemlemir писав:Де можна знайти суміжників в пояснювальну якщо ділянок більше однієї?

чи скільки це коштує(можна в лс), чи де можна почитать, але так щоб не звезти 2 дня

Нічого не зрозумів. :D Ви хочете внести зміни в шаблон пояснювальної записки?