|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Ситуация: Необходимо перезаполнить таблицу из массива Код: vbnet 1. 2.
а потом добавляю или удаляю строки Код: vbnet 1. 2. 3. 4. 5.
Вопрос: Надо Как то определить с какой по какую строчку массива добавить значения это можно задать в выражении [FOR IExpression] но как сделать не могу сообразить, да и примера найти не смог. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 11:32 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Alexandr29Надо Как то определить с какой по какую строчку массива добавить значенияТак ведь кроме вас никто не знает, "с какой по какую строчку массива"нужно вести обработку... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 11:40 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
tanglir, nrecordArhivFile=reccount() Мы определяем количество записей в таблице соответственно с nrecordArhivFile+1 по конец массива Alen(atov,1) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 11:52 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
попробуйте FOR BETWEEN(nrecordArhivFile+1 по конец массива Alen(atov,1)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:12 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Viart, попробовал вариант APPEND FROM ARRAY atov FOR BETWEEN(atov,nrecordArhivFile+1,Alen(atov,1)) он не работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:20 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
ИМХО: насколько помню append добавляет 1 запись, а по условию for выходит больше, там или цикл нужно делать, либо Insert SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:30 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Alexandr29, Help по Append from Array... FOR lExpression Specifies a condition for appending records from the array. lExpression must contain the name of a target field in its conditional expression. Before a row of the array is appended to a record in the table, the array element corresponding to the target field specified in lExpression is checked to determine whether that array element meets the condition in lExpression. If the array element satisfies the condition, a record is appended. If the array element does not satisfy the condition, the array row is not appended and the next row in the array is checked to determine whether it meets the condition. То есть, for служит для проверки того, чтобы значение из массива, которое будет сохранено в поле таблицы удовлетворяло некоторому условию. Например, Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:48 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Viart, Нет, может добавлять несколько записей, проверял. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:49 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Alexandr29Viart, попробовал вариант APPEND FROM ARRAY atov FOR BETWEEN(atov,nrecordArhivFile+1,Alen(atov,1)) он не работает.Потому что в APPEND FROM ARRAY: Help APPEND FROM ARRAYFOR lExpression Задает условие добавления записей из массива. Выражение lExpression должно содержать имя поля назначения в его условном выражении. Перед добавлением строки массива к записи в таблице проверяется элемент массива, который соответствует полю назначения, заданному выражением lExpression. Если элемент массива удовлетворяет условию lExpression, запись добавляется. Если элемент массива не удовлетворяет этому условию, строка массива не добавляется и проверяется следующая строка массива - удовлетворяет она условию или нет. ViartИМХО: насколько помню append добавляет 1 запись, а по условию for выходит больше, там или цикл нужно делать, либо Insert SQL. Help APPEND FROM ARRAYДобавляет одну запись в выбранную в данный момент таблицу для каждой строки массива и заполняет каждую запись данными из соответствующей строки массива. INSERT SQL тоже как-то не очень... Тогда бубен: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
:)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 12:49 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
извращенцы, ёптыть... отрубаете от массива кусок с помощью acopy(), аппендите его, и всё! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 13:15 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
tanglir, Пробовал, размер массива остается тем же, только конец заполняется .f. ACOPY( atov,atov_add,5*nrecordArhivFile+1,-1) Так что APPEND FROM ARRAY atov_add For тоже надо писать условие Вариант Станислав С...кий мне кажется самый грамотный, я только его ещё не проверял ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 14:16 |
|
APPEND FROM ARRAY ArrayName [FOR lExpression]
|
|||
---|---|---|---|
#18+
Alexandr29Вариант Станислав С...кий мне кажется самый грамотный, я только его ещё не проверял Я ничего не предлагал, просто попытался проиллюстрировать примером статью из хелпа.... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 14:20 |
|
|
start [/forum/topic.php?fid=41&msg=38073793&tid=1583277]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 267ms |
total: | 419ms |
0 / 0 |