Сорри за очепятку
NEIGHBORS[9]
Прочитайте еще и это
[url]Новые возможности программы - #4 від Alexey_Gorpynich]
З.Ы. Функция возвращает некий параметр смежников участка, для которого в последний раз генерировался документ на основе дмт-шаблона со списком смежников. Используйте в Reports.exe с учетом этой особенности, то есть пометив участок генерируйте документ, а затем только генератор отчетов, для следующего участка снова генерировать документ, затем только генератор отчетов.
var n,i:Integer;
S:String;
const
CyrLetters='АБВГДЄЕЖЗІИЙКЛМНОПРСТУФХватит';
begin
......
S:=Param('ID50030'); // заменить ID параметра
n:=0;
repeat
inc(n);
until GetV(n,S)='';
dec(n);
for i:=1 to n do
if i<>n
then
Memo1.Lines.Add('від '+Copy(CyrLetters,i,1)+' до '+Copy(CyrLetters,i+1,1)+' '+GetV(i,S)) //заменить Memo1
else
Memo1.Lines.Add('від '+Copy(CyrLetters,i,1)+' до А '+GetV(i,S)); //заменить Memo1
......
end.
Хочу заметить что в новых версиях (как минимум с 2009 года) нет необходимости предварительно использовать команду Сервис|Документы: функция Neighbors будет работать при использовании команды Сервис|Генератор отчетов.
Пробував заповнити текст в MEMO використовуючи його властивість MEMO1.memo.
MEMO1.memo:=ФФФФ
Але не можу добитись якогось результату. говорить що несумісні типи.
Про цю властивість в хелпі знайшов наступне:
property Memo : TWideStrings;
Description
Текст объекта.
Що за тип TWideStrings - не сказано.
Я создал в Дигиталс параметр =CLA(P[AU]) UA Адреса землевласника для того, чобы убрать -. Теперь при использовании в репортсе [PARAM(‘UA’)] адрес выводит без -, но между запятой и следующим словом нет пробела. м. Хмельницкий,вулиця Трудова,114 Как сделать так, чтобы пробел был?
Спасибо за помощь! После помещения этого кода в Репортс стал получать ошибку Could not convert variant of type (Null) into type (Integer)? Что это может быть?
Лучше используйте StringPart для получения частей строки разделенной разделителем, а из частей можно слепить что угодно, заодно проверив не пустые ли они.
AdresaVL:=‘’;
AU:=Param(‘AU’);
if GetV(3,AU)<>‘-’
then AdresaVL:=GetV(3,AU)+’ обл., ‘;
if GetV(4,AU)<>’-’
then AdresaVL:=AdresaVL+GetV(4,AU)+’ район, ‘;
if GetV(5,AU)<>’-’
then AdresaVL:=AdresaVL+GetV(5,AU)+‘, ‘;
if GetV(6,AU)<>’-’
then AdresaVL:=AdresaVL+GetV(6,AU)+‘, ‘;
if GetV(7,AU)<>’-’
then AdresaVL:=AdresaVL+‘д.№ ‘+GetV(7,AU)+’, ‘;
if GetV(8,AU)<>’-’
then AdresaVL:=AdresaVL+‘корпус № ‘+GetV(8,AU)+’, ‘;
if GetV(9,AU)<>’-’
then AdresaVL:=AdresaVL+'кв.№ ‘+GetV(9,AU)+’, ';