|
Загружаю табличную часть справочника в скл | ☑ | ||
---|---|---|---|---|
0
Мисти
28.07.14
✎
18:58
|
Выгрузка происходит регулярно, в момент изменения справочника, но что именно изменилось - неизвестно, могли ведь и строку удалить! Поэтому при повторной загрузке мне сначала надо пометить все строки таб. части на удаление, а потом загрузить заново. Да?
Вот я что написала, пока не проверяла, похоже на правду? ТекстЗапроса = "SELECT 1 FROM gtw_SubwayStationInObject WHERE [ObjectUI1C] = ?"; Cmd.CommandText = ТекстЗапроса; Cmd.Parameters(0).Value = "{"+Строка(ОбъектАренды.Ссылка.УникальныйИдентификатор())+"}"; Выборка = Cmd.Execute(); Пока Не Выборка.EOF() Цикл ТекстЗапроса = "update gtw_SubwayStationInObject set ModifiedOn1C= ?, DoDelete = ? WHERE ObjectUI1C = ?"; Cmd.CommandText = ТекстЗапроса; Cmd.Parameters(0).Value = ТекущаяДата(); Cmd.Parameters(1).Value = 1; Cmd.Parameters(2).Value = "{"+Строка(ОбъектАренды.Ссылка.УникальныйИдентификатор())+"}"; Cmd.Execute(); КонецЦикла |
|||
1
Мисти
28.07.14
✎
19:17
|
Ау?
|
|||
2
m-serg74
28.07.14
✎
19:38
|
(0) /пометить все строки таб. части на удаление/
что это? |
|||
3
zak555
28.07.14
✎
19:40
|
строку ТЧ можно пометить на удаление ?
|
|||
4
m-serg74
28.07.14
✎
19:41
|
(3) ТС походу захворала
|
|||
5
zak555
28.07.14
✎
19:41
|
я так и не пойму откуда/куда загружается ?
|
|||
6
m-serg74
28.07.14
✎
19:41
|
(5) из 1С в СКЛ походу
|
|||
7
m-serg74
28.07.14
✎
19:42
|
(0) первый запрос назачем не понятно
|
|||
8
Мисти
28.07.14
✎
19:43
|
Выгружаю информацию из 1С в скл.
Если я строки в скл не помечу на удаление, то при удалении строки в 1С - в скл она просто не загрузится заново, а старая так и будет болтаться. Там есть поле DoDelete - сначала везде проставлю единичку перед загрузкой, потом, всё, что буду загружать - помечу ноликом, так будет видно, что было удалено. |
|||
9
m-serg74
28.07.14
✎
19:43
|
а здесь FROM вроде не хватает, не?
ТекстЗапроса = "update gtw_SubwayStationInObject set ModifiedOn1C= ?, DoDelete = ? WHERE ObjectUI1C = ?"; |
|||
10
m-serg74
28.07.14
✎
19:44
|
(8) не помечу на удаление, а не удалю наверное?
|
|||
11
Мисти
28.07.14
✎
19:44
|
(7) Я загружаю тьолько один объект аренды, соотвественно, я должна пометить единичкой только его табличную часть.
|
|||
12
m-serg74
28.07.14
✎
19:45
|
(11) а второй WHERE делает не тоже самое?
|
|||
13
Мисти
28.07.14
✎
19:46
|
Ну как бы да, но тут я уверена, что я его нашла.
А как надо-то? |
|||
14
Мисти
28.07.14
✎
19:47
|
Я могу написать update, если строка не найдется?
|
|||
15
m-serg74
28.07.14
✎
19:47
|
(13) только FROMа думаю не хватает, и не знаю надо ли делать это не средствами 1С
ТекстЗапроса = "update gtw_SubwayStationInObject set ModifiedOn1C= ?, DoDelete = ? WHERE ObjectUI1C = ?"; Cmd.CommandText = ТекстЗапроса; Cmd.Parameters(0).Value = ТекущаяДата(); Cmd.Parameters(1).Value = 1; Cmd.Parameters(2).Value = "{"+Строка(ОбъектАренды.Ссылка.УникальныйИдентификатор())+"}"; Cmd.Execute(); |
|||
16
m-serg74
28.07.14
✎
19:48
|
(14) не найдется значит и не сделается ничего
|
|||
17
Мисти
28.07.14
✎
19:48
|
(10) DoDelete - это вроде не удаление, а просто поле, которое потом загрузчиками трактуется как пометка на удаление.
|
|||
18
Мисти
28.07.14
✎
19:49
|
Куда FROM писать?
|
|||
19
m-serg74
28.07.14
✎
19:49
|
(17) так так и надо было писать - как заполнить поле, ибо пометка удаления в 1С кагбэ определенное понятие подразумевает стандартное
|
|||
20
m-serg74
28.07.14
✎
19:50
|
(18) куда то в этом интервале:
"update gtw_SubwayStationInObject set ModifiedOn1C= ?, DoDelete = ? WHERE ObjectUI1C = ?"; |
|||
21
Мисти
28.07.14
✎
19:50
|
В 1с просто строку удалили - никакой пометки нет.
|
|||
22
Мисти
28.07.14
✎
19:51
|
Вроде у меня куски аналогичные без FROM работали.
|
|||
23
m-serg74
28.07.14
✎
19:51
|
||||
24
m-serg74
28.07.14
✎
19:52
|
(21) и?
|
|||
25
m-serg74
28.07.14
✎
19:53
|
+(23) оттуда пример
UPDATE dbo.Table2 SET dbo.Table2.ColB = dbo.Table2.ColB + dbo.Table1.ColB FROM dbo.Table2 INNER JOIN dbo.Table1 ON (dbo.Table2.ColA = dbo.Table1.ColA); |
|||
26
Мисти
28.07.14
✎
19:53
|
15 - так мне надо все строки пометить, где цикл?
Или сразу во все и встанет единица? |
|||
27
m-serg74
28.07.14
✎
19:54
|
(26) какой цикл?
|
|||
28
m-serg74
28.07.14
✎
19:55
|
(26) where отберет все что подходит а set поменяет, а update запишет
|
|||
29
Мисти
28.07.14
✎
19:55
|
У меня в (0).
Т.е. запись происходит сразу во все подходящие строки? |
|||
30
m-serg74
28.07.14
✎
19:56
|
(29) что в (28) непонятного?
|
|||
31
Мисти
28.07.14
✎
19:58
|
(30) Понятно, но удивительно! В 1С так не бывает.
|
|||
32
m-serg74
28.07.14
✎
20:37
|
(31) а как НаборЗаписей.Записать() работает по твеому?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |