Приклади робочих скриптів у звітових формах
Re: Примеры рабочих скриптов в отчётных формах
Такие данные можно получить, хотя я не уверен, что это предусмотрено, в случае если расчёты координат точек вы проводите в GISе, если же координаты поворотных точек взяты из другой программы, то получить такое значение возможно лишь указывая точность определения координат по каждой точке в отдельности или же на все скопом. Немного не в тему, но тоже интересно: http://archive.nbuv.gov.ua/portal/chem_biol/Vnuvgp/tekhn/2012_2/Vt5830.pdf
Востаннє редагувалось 02 грудня 2014, 09:14 користувачем LeViK, всього редагувалось 1 раз.
Re: Примеры рабочих скриптов в отчётных формах
скажите пожалуйста, как в экспликации (универсальная КЗВУ) сделать чтобы сумма площадей всех зон обмэжэнь не превышала площадь земельного участка?
например. участок 100% в охранной зоне ПЗФ или водоохранной зоне + охранная зона ЛЕП.
экспликация заполняется следующим образом: площадь участка (угодия) 10 га, в том числе в зоне ограничений 11 га.
например. участок 100% в охранной зоне ПЗФ или водоохранной зоне + охранная зона ЛЕП.
экспликация заполняется следующим образом: площадь участка (угодия) 10 га, в том числе в зоне ограничений 11 га.
Re: Примеры рабочих скриптов в отчётных формах
Fater писав:скажите пожалуйста, как в экспликации (универсальная КЗВУ) сделать чтобы сумма площадей всех зон обмэжэнь не превышала площадь земельного участка?
например. участок 100% в охранной зоне ПЗФ или водоохранной зоне + охранная зона ЛЕП.
экспликация заполняется следующим образом: площадь участка (угодия) 10 га, в том числе в зоне ограничений 11 га.
1. проверьте сам расчет площадей - чтоб площадь была макс.точной - сперва суммируете площади в кв.м, а потом переводите в га.
2. проверьте тип данных переменных для площадей ограничений. Должен бить тип Double. Возможно у Вас стоит Integer, присвоение значение которому уже округляется до целого числа
Re: Примеры рабочих скриптов в отчётных формах
Fater писав:скажите пожалуйста, как в экспликации (универсальная КЗВУ) сделать чтобы сумма площадей всех зон обмэжэнь не превышала площадь земельного участка?
А что Вы будете делать, если у Вас идёт трубопровод и ЛЭП и она накладываются?
Сумма площадей всех зон или сервитутов может быть меньше площади участка (если они не заполняют весь участок), а может быть и больше (если они накладываются друг на друга) и это ВПОЛНЕ НОРМАЛЬНО! Если же какие-то уникумы решают проверять баланс ограничений, тогда старайтесь делать так, чтобы ограничения НЕ ПЕРЕСЕКАЛИСЬ. Тогда и сумма площадей их не будет больше участка, но это всёравно глупость.
Re: Примеры рабочих скриптов в отчётных формах
Fater писав:........... площадь участка (угодия) 10 га, в том числе в зоне ограничений 11 га.
Неверно построена экспликация. Такие вопросы нужно лучше задавать на форуме землеустроителей. Если же хотите составлять экспликацию, то у вас будет два замкнутых полигона, на одном из них действует два ограничения, а на одном одно. сумма площадей их всё равно будет 10 га.
Re: Примеры рабочих скриптов в отчётных формах
LeViK писав:Если же хотите составлять экспликацию, то у вас будет два замкнутых полигона, на одном из них действует два ограничения, а на одном одно. сумма площадей их всё равно будет 10 га.
Если два ограничения пересекаются (а это вполне возможно! я уже наводил пример с лэп и трубопроводом) то каким боком сумма их площадей будет равна участку?
Re: Примеры рабочих скриптов в отчётных формах
NickS писав:Если два ограничения пересекаются (а это вполне возможно! я уже наводил пример с лэп и трубопроводом) то каким боком сумма их площадей будет равна участку?
Я вижу три фигуры, на двух по одному ограничению, а внутри фигуры ограниченной точками 2,3,6,7 действуют два ограничения. Да, для формирования XML необходимо отображение информации виде представленном на картинке, но использовать его для создания экспликации, в которой будет сводится общая площадь нельзя. Это как определять длину десяти килограмм воды. Безсмыслица. Если нужно показать количество земель на которые распространяется охранные обязательства в разрезе площадей, то основной в таблице должна быть площадь, а участки могут быть и с двумя и с тремя ограничениями. А если же нужно показать площади каждого обязательства, то суммировать их в итоге просто нельзя.
Re: Примеры рабочих скриптов в отчётных формах
Может уже спрашивали, но я не нашёл. Подскажите какой код использовать в отчётах (fr3) что бы выводить новый код целевого назначения (например: вместо 1.8 - 02.01)
и ещё: можно ли зделать так чтобы в отчёте (fr3) "Акт пиёма-передачи межевых знаков" в строке - "Межові знаки передані на зберігання землекористувачу в кількості 12 штук." количество межевых знаков ровнялось не общему количеству точек участка (в даном примере 12), а подщитывало количество точек которые помечены как "закреплён на местности". Какой код надо использовать?
и ещё: можно ли зделать так чтобы в отчёте (fr3) "Акт пиёма-передачи межевых знаков" в строке - "Межові знаки передані на зберігання землекористувачу в кількості 12 штук." количество межевых знаков ровнялось не общему количеству точек участка (в даном примере 12), а подщитывало количество точек которые помечены как "закреплён на местности". Какой код надо использовать?
Re: Примеры рабочих скриптов в отчётных формах
NoViChoK писав:Может уже спрашивали, но я не нашёл. Подскажите какой код использовать в отчётах (fr3) что бы выводить новый код целевого назначения (например: вместо 1.8 - 02.01)
и ещё: можно ли зделать так чтобы в отчёте (fr3) "Акт пиёма-передачи межевых знаков" в строке - "Межові знаки передані на зберігання землекористувачу в кількості 12 штук." количество межевых знаков ровнялось не общему количеству точек участка (в даном примере 12), а подщитывало количество точек которые помечены как "закреплён на местности". Какой код надо использовать?
1. Код для целевого
Код: Виділити все
If (LocateData( 'DM2.TbUses', 'ID_Uses', <DM1.TbUser."ID_Uses">)) Then
If (RecordCount('DM2.TbUsesLnk') > 0) Then
If (LocateData( 'DM2.TbTypeUse', 'ID_TypeUse', GetValue('DM2.TbUsesLnk', 'ID_TypeUse')) = True) And (Pos(Lowercase(<DM2.TbTypeUse."Name">), FunkName) = 0) Then
Begin
If (Length(Trim(FunkName)) > 0) Then
FunkName := FunkName + ' та ';
FunkName := FunkName + 'Код цільового - ' + <DM2.TbTypeUse."Number"> + IIF ( Pos('для ', Lowercase(<DM2.TbUses."Name">))=0, 'для '+Lowercase(<DM2.TbUses."Name">), Lowercase(<DM2.TbUses."Name">)) ;
End;
2. количество знаков
Код: Виділити все
DataFirst( 'DM1.TbPoint')
PointCount := 0;
While Not DataEOF( 'DM1.TbPoint')Do
Begin
If <DM1.TbPoint."Flag"> Then
Inc( PointCount);
DataNext( 'DM1.TbPoint');
End;
Re: Примеры рабочих скриптов в отчётных формах
Код: Виділити все
DataFirst( 'DM1.TbPoint')
PointCount := 0;
While Not DataEOF( 'DM1.TbPoint')Do
Begin
If <DM1.TbPoint."Flag"> Then
Inc( PointCount);
DataNext( 'DM1.TbPoint');
End;
Вставляю код, прописываю значение PointCount в integer, пишет: нет возможности преобразовать тип variant (String) в тип (Boolean). Что я делаю не так?