|
|
|
Помогите с написанием ХП
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Delphi XE2, IBX, FireBird 2.5 Задача следующая: Процедура для получения новых номеров, основываясь на уже введенных данных. Новое (следующее) значение для REG_NUM считается так: REG_NUM + BLOCKS, при этом, если Поле NUM_SLICE не пусто, то новое значение считается: Найти сумму NUM_SLICE+BLOCK_SLICE по максимальному NUM_SLICE где ИзвлечьГод(DATE_IN) = Год_С_Клиента, то есть найти запись введенную в этом году. Если год с клиента больше года последней записи в таблице, но Нумерация для записи в REG_NUM начнется с 1, т.е. нумерация с нового года начинается с 1 номера. Есть таблица с полями: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ХП (просьба сильно не пинать, опыта мало) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. Получается, что процедура должна возвращать для текущего года либо новый номер (REG_NUM + BLOCKS), либо новый номер из NUM_SLICE+BLOCK_SLICE по максимальному NUM_SLICE Помогите решить проблему. Заранее благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 23:00:04 |
|
||
|
Помогите с написанием ХП
|
|||
|---|---|---|---|
|
#18+
если Поле NUM_SLICE не пусто Оно всегда будет пусто, вы его нигде не получаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2013, 09:53:49 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=115&tid=1564372]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
129ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 424ms |

| 0 / 0 |
