|
|
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Хелп !! Парюсь уже целый день, не знаю в чем дело !! есть таблица Код: plaintext 1. 2. 3. 4. 5. в ORDNUM3 записи типа 001FW03 003FS04 111FS04 и тд.. 3 цифры+2 буквы+ 2 цифры для того чтоб вытащить из ORDNUM3 первые 3 цыфры (задача нийти максимальное число по выборке) пишу (Delphi7) UDF Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. регистрирую Код: plaintext 1. 2. 3. и вызываю из StoredProcedure Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ----------------до этого момента всё ОК------------------ делаю проверку по SELECTу Код: plaintext 1. и после всего этого меня IBExpert посылает *$#@% со словами "Connection was lost to database:" сил моих больше нет, Хелп плз!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 01:29:35 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
убери free_it и попробуй снова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 08:23:25 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Если у тебя FB 1.5 то UDF не нужен: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 09:25:38 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Zmeisheубери free_it и попробуй снова. тот же результат :( Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements. connection lost to database. ЛентяйЕсли у тебя FB 1.5 то UDF не нужен. да, у меня именно FB1.5, твой запрос работает, но просто принципиально интерестно почему UDF не хочет работать., может я с типами чего напутал? Можна ли как-то отследить выполнение UDF ? чего он там получает, как обрабатывает, что выдает. Debug в общем. Всем спасибо за участие :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 12:30:41 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Отследить можно. Предполагаю: 1 - перед тем как делать Result := StrToInt(Copy(string(ANum), 1, Length(string(ANum)) - 4)); следует проверить фактическую длину строки и выполнять этот кусок при условии, что строка больше или равна 3 символам. Во всяком случае не пустая. 2 - Result := StrToInt(Copy(string(ANum), 1, Length(string(ANum)) - 4 )); тут у меня большие сомнения. если: anum = 0123456789; length = 10; 10 - 4 = 7; т.е. с 1-го символа по 7-ой??? Но тебе только 3 надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 13:17:31 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
да, у меня именно FB1.5, твой запрос работает, но просто принципиально интерестно почему UDF не хочет работать., может я с типами чего напутал? Ну наверное где-то чего-то не так. Если сильно приперло - могу посмотреть повнимательней, но поближе к вечеру. Можна ли как-то отследить выполнение UDF ? чего он там получает, как обрабатывает, что выдает. Debug в общем. Можно. Я в Delphi 5 в меню Run/Parameters указываю путь к exe-шнику FB с параметром -a и дальше в отладчике смотрю, чего я там наваял такого... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 13:18:29 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Zmeisheесли: anum = 0123456789; length = 10; 10 - 4 = 6; т.е. с 1-го символа по 7-ой??? Но тебе только 3 надо. ORDNUM3 varchar( 7 ) тоесть 10-4 никак быть не может, только 7 -4 =3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 13:26:25 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Значит на пустоту проверяй Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 13:31:36 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Zmeishe твой ORDNUM3 может принимать значения null ну судя из CREATE может, но значений null там нет , +не работает ни одна выборка по разным параметрам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 13:53:02 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Попробуйте, убрать free_it и поставить вместо него by value ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 16:15:57 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
PS А вообще-то не очень похож текст udf на dll библиотеку. Если только библиотека не определена отдельно, а в ней вызов функции из приведенного Вами модуля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2004, 17:06:43 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
Valery ShiskinПопробуйте, убрать free_it и поставить вместо него by value Уряяяяяя!!!!! Уважаемый Валерий Шишкин! большое тебе спасибо ! Я уже забил на эту УДФ, потом решил проверить by value вариант, все начало работать без сучка и задоринки !! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2004, 15:00:25 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
ЛентяйЕсли у тебя FB 1.5 то UDF не нужен: Код: plaintext 1. Что будет быстрее работать, UDF (см.начало) или сия ХП ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2004, 19:42:59 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
OJIEI' ЛентяйЕсли у тебя FB 1.5 то UDF не нужен: Код: plaintext 1. Что будет быстрее работать, UDF (см.начало) или сия ХП ?А где здесь ХП? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2004, 19:54:00 |
|
||
|
UDF Error !!!
|
|||
|---|---|---|---|
|
#18+
здесь: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2004, 19:56:58 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=459&tid=1578126]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 191ms |
| total: | 352ms |

| 0 / 0 |
