Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
Здравствуйте все! В стартовом модуле пишу param x1 При вызове с параметром переменная х1 получает некоторое значение. Если программа вызвана без параметров, то х1 имеет тип логический и ей по умолчанию присвоено .f. Если я использую функцию param(), то она мне всеравно показывает, что программа вызвана с параметром, хотя этого нет. А при проверке типа х1 выдается ошибка- несответствие типов. Моя задача сделать так, что если параметров нет, то действие-1, если параметр передан, то в зависимости от его значение следующая последовательность действий. Подскажиет как сделать правильно! Заранее всем спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 11:46 |
|
||
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:02 |
|
||
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
А если написать вот так: procedure main() lparameters m.lcValue1, m.lnValue2, m.ldValue3 m.lcValue1 = iif(type('m.lcValue1')#"C","",m.lcValue1) m.lnValue2 = iif(type('m.lnValue2')#"N",0,m.lnValue2) m.ldValue3 = iif(type('m.ldValue3')#"D",{},m.ldValue3) do case case parameters() = 3 *!* Do something case parameters() = 2 *!* Do something case parameters() = 1 *!* Do something otherwise *!* Do something endcase endproc =========== тест на 7.0 пройден успешно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:20 |
|
||
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
Еще вариант: LPARAMETERS par1 IF TYPE("m.par1")="L" * значение параметра par1 либо не передано, либо передано неверно ENDIF Функция PARAMETERS() отличается от функции PCOUNT() тем, что PARAMETERS() возвращает количество переданных параметров в последней вызванной функции. А PCOUNT() всегда возвращает количество параметров переданное в текущую функцию. Выполни такую тестовую программку do Prog1 with 1,2,3 PROCEDURE Prog1 LPARAMETERS par1, par2, par3 ?'PARAMETERS()=',PARAMETERS() ?'PCOUNT()=',PCOUNT() DO Prog2 with 1 ?'PARAMETERS()=',PARAMETERS() ?'PCOUNT()=',PCOUNT() RETURN PROCEDURE Prog2 LPARAMETERS par1 RETURN В реузльтате ты получишь значения PARAMETERS()=3 PCOUNT()=3 PARAMETERS()=1 PCOUNT()=3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:29 |
|
||
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
if empty(x1) параметра нет! endif ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2003, 12:32 |
|
||
|
Входящие парметры при запуске программы
|
|||
|---|---|---|---|
|
#18+
Ниже приведен текст функции, который я использую в качестве заготовки при создании новых PRG-файлов. Остается немного его отредактировать, если нужно, что бывает редко, и сразу приступить к написанию самой функции как таковой. ********************************************************** FUNCTION PRIMER ********************************************************** * 2003.12.00.0.9.0014 EXAMPLE = PRIMER('START') ********************************************************** PARAMETERS P00, P01, P02, P03, P04, P05, cRegi, mRegi, cAnsw cRegi = IIF(TYPE('P00') ='C', UPPER(ALLTRIM(P00)), '') mRegi = IIF(TYPE('P01') ='C', UPPER(ALLTRIM(P01)), '') STORE '' TO cAnsw DO CASE CASE LEN (cRegi) < 3 = MESSAGEBOX (PROGRAM() + STR(LINE()) + ' ERROR REGIME = '+ cRegi) RETURN '-1' CASE cRegi == 'RELEASE' RETURN '0014.0000; Author ......' CASE INLIST (cRegi, 'START') CASE .T. = MESSAGEBOX (PROGRAM() + STR(LINE()) +' ERROR K='+ cRegi ) RETURN '-1; ERROR REGIME = '+ cRegi +' '+ PROGRAM() + STR(LINE()) ENDCASE RETURN cAnsw ********************************************************** ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2003, 14:27 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=402&tid=1597452]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 272ms |
| total: | 383ms |

| 0 / 0 |
