|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.12.2011, 08:06 | #1 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Не получается составить условие
Добрый день! Прошу помощи. Задача: к двум условиям добавить третье условие, которое получается так: из sListBox8 нужно в цикле взять каждое значение и передать его в kategoria и выполнить код в цикле. С выполнением кода в цикле вроде проблем нет. Проблема в передаче значения в kategoria из списка. Вот код:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
14.12.2011, 09:30 | #2 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Честно говоря не совсем понял задачу, но может это?
Код:
программа — запись алгоритма на языке понятном транслятору
|
14.12.2011, 09:30 | #3 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
Если я правильно понял, тогда так:
Код:
evg_m, одновременно и одно и то же
"ковыряю изнутри" (с)
|
14.12.2011, 09:33 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Не совсем понятна постановка вопроса. Из того что понял
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.12.2011, 10:18 | #5 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Всем спасибо за ответы. Проблему вроде решил так. Я забыл сказать, что у меня Form1.sListBox8 заполняется значениями в результате работы хранимой процедуры. Эти же результаты-значения присваиваются и kategoria. Я просто написал так:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
14.12.2011, 10:24 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Если условие kategoria = Form1.sp2.FieldByName('KATEGORIA'). AsString не зависит от индекса цикла его вообще можно вынести за пределы цикла и цикл выполнять только при его истинности. А если оно всегда истинно - зачем оно вообще нужно?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
16.12.2011, 09:46 | #7 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Не, все равно мой способ не совсем корректно работает. Итак, поясняю задачу.
В результате работы кода выше у меня в строковые переменные заносятся некоторые значения, которые были получены в результате работы запросов и хранимых процедур. Из всех переменных, мне нужны только 6: regnumber,dateszv6,datedsv6,kategor ia,rsvnol,datasnyt. Первый параметр будет проверяться на пустоту. Если он не пустой, то будет выполняться основной код. Если пустой, то будет выполняться другой код. Во вторую и третью переменныу всегда будут заноситься значения либо "+" либо "-" в зависимости от результатов работы хранимой процедуры. Проблема с четвертой переменной. В нее заносится результат работы хранимой процедуры и занесенное значение должно сравниваться со списком значений Form1.sListBox8. Пятая переменная может принимать только либо значение "Сданы" либо "Не сданы". Он менее важен, т.к. для него код вроде отрабатывается. Шестая переменная может быть либо пустой либо содержать дату. Вся проблема с составлением условия. Вот код, который сейчас отрабатывается так как я его написал: Код:
Как видно, в коде где if regnumber <> '' есть одинаковые условия, именно поэтому и путается программа. Потому что нет сравнения значения, внесенного в переменную kategoria со списком значений в Form1.sListBox8. Не могу никак правильно воткнуть эту проверку. Прошу помощи. Надеюсь, что сейчас я яснее озвучил задачу.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
Последний раз редактировалось artemavd; 16.12.2011 в 09:50. |
16.12.2011, 10:05 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
16.12.2011, 10:26 | #9 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Но ведь у меня в kategoria в результате работы хранимой процедуры sp2 и заносится значение из Form1.sp2.FieldByName('KATEGORIA'). AsString. Это условие
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
16.12.2011, 11:25 | #10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Судя по тому, что вы показали kategoria берете в цикле из ListBox, а сравнение идет со значением поля конкретной записи из Query или Table - то надо. А в общем приведенного кода и ваших объяснений не достаточно для точного диагноза. У вас классическая проблема тестирования значений нескольких параметров, и, в зависимости от комбинации значений, выполнения определенных действий. Для некоторых комбинаций действия возможно совпадают. Хочется и кода меньше написать и прозрачности проги добиться. Если опыта недостаточно лучше расписать все возможные значения комбинаций. Совпадающие участки кода для выполнения действий по условиям можно вынести в отдельные процедуры.
Если kategoria берете из Form1.sp2 то Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 16.12.2011 в 11:29. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не получается составить массив чисел для массива букв | TheKostarico | Общие вопросы C/C++ | 4 | 30.11.2011 14:47 |
Не получается составить навигацию между Window и page | Destroy | WPF, UWP, WinRT, XAML | 0 | 18.06.2011 17:38 |
Не получается составить программу. | ITxan | Помощь студентам | 10 | 23.10.2010 22:02 |
Не получается правильно составить запрос XPath, Использую SelectSingleNode | kolchakA | Общие вопросы .NET | 0 | 09.07.2010 17:32 |
Помогите пожалуйста решить две задачи по паскалю и составить и составить блок схему! | ...Оленька... | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 20.01.2009 09:37 |