Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2015, 15:55   #1
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
Восклицание Что делает эта функция

Доброго времени суток, форумчане! Разбираю код своего предшественника и вот не могу понять, что делает эта функция, подскажите:

Код:
function TNotes.MemoByName(AMemoName: string): TStrings;
var i:integer;
begin
AMemoName:=LowerCase(AMemoName);
result:=TStringList.Create;
if memolist.Count>0 then for i:=0 to memolist.Count-1 do
  begin
  if LowerCase(TNotesItem(memolist.Items[i]).Name)=AMemoName then result.Assign(TNotesItem(memolist.Items[i]).Text);
  end;
end;
Заранее благодарю за помощь!
nactyx вне форума Ответить с цитированием
Старый 04.06.2015, 16:34   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

явно есть список TNotesItem, в котором хранятся TStringList'ы (a'ля Memo).
Функция проходит по списку, сравнивая имя в списке с переданным параметром,
если совпало, то результату присваивается данный стринглист.


кстати, я бы был с этой функцией настороже: она внутри делает Create, а кто будет чистить созданное - не совсем понятно...


Цитата:
Код:
if memolist.Count>0 then
и выкиньте этот if memolist.Count>0 then - в данном случае от него толку чуть меньше, чем никакого!

Последний раз редактировалось Serge_Bliznykov; 04.06.2015 в 16:51.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 04.06.2015, 17:19   #3
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию

Далее вызывается в коде таким образом:
Код:
tmpsql:=format(sl.memobyname('ZakInOtdel').Text,[str39(DataSet['№ЗАКАЗА']),str39(Otdel)]);
Результат? Не понимаю.
SL содержит в себе memolist из двух строк так называемые tnotesitem:
0 - ZakInOtdel
1 - ZakInArhiv
И каждая в себе содержит здоровенный sql-запрос


Тогда вопрос вдогонку - есть набор написанных компонентов. Чтобы с ними работать - надо их устанавливать (устанавливая через .bpl файлы). Как сделать так, чтобы не приходилось их устанавливать на каждой машине, чтобы работать с кодом?

Последний раз редактировалось nactyx; 04.06.2015 в 17:31.
nactyx вне форума Ответить с цитированием
Старый 05.06.2015, 08:51   #4
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию

Т.е. имеется ли возможность их напрямую привязать сразу к проекту, без установки каждый раз?
nactyx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обьясните пожалуста как и что делает эта программа и почему она это делает. Dimka-novitsek Общие вопросы C/C++ 7 16.10.2013 12:02
Что делает эта процедура? (не студент) hon Общие вопросы Delphi 3 29.07.2012 21:00
Что делает эта строчка??? marselik Общие вопросы C/C++ 2 02.11.2009 13:54
Что делает эта прога StudentPolitech Общие вопросы C/C++ 1 25.03.2009 22:54
FindEgual-что делает эта функция? stasig Паскаль, Turbo Pascal, PascalABC.NET 1 14.12.2008 23:02