Имя: Пароль:
1C
1С v8
НайтиПоРеквизиту
,
0 Lagerlef
 
20.10.14
13:03
Ищу склад по типу цен:
СкладКомпании = Справочники.СкладыКомпании.НайтиПоРеквизиту("ТипЦенРозничнойТорговли",ТипЦен);

Есть два склада с одним типом цен. Не понимаю как он выбирает какой выдать: тот, который выдает в результате позже создан, ниже в сортировке по коду и наименованию. НО если я создаю третий склад с таким же типом цен еще больше кодом - метод все равно выдает второй склад.
1 1dvd
 
20.10.14
13:04
(0) как бог на душу положит
2 mergan
 
20.10.14
13:05
который стоит самым верхнем в таблице складов компании
3 Ненавижу 1С
 
гуру
20.10.14
13:05
поведение неопределено и разработчик не должен на него опираться
4 Ненавижу 1С
 
гуру
20.10.14
13:06
(2) внутри сервера на самой верхней полочке?
5 Lagerlef
 
20.10.14
13:06
Второй склад не самый первый ни по наименованию ни по коду (((
6 1dvd
 
20.10.14
13:06
(5) а по внутреннему коду?
7 Lagerlef
 
20.10.14
13:09
(6) По коду элемента тоже в середине где-то
8 mergan
 
20.10.14
13:09
(5)Я и ни сказал по коду или наименованию. У тебя есть таблица в которой содержится все твои склады компании. Как правило они там появляются по мере добавление записей. Хотя данный порядок может быть нарушен в результате удалений из таблицы записей.
9 mergan
 
20.10.14
13:10
То есть порядок в этой таблице зависит от того какой элемент был создан раньше.
10 ObjectRelation Model
 
20.10.14
13:11
(9) неправда
11 Lagerlef
 
20.10.14
13:12
Я пробовала этот второй склад удалить - тогда выбирает первый. А если создать еще один склад (условно четвертый) - то четвертый О_О
12 1dvd
 
20.10.14
13:14
мыши плакали, кололись, но продолжали жрать кактусы...
13 Lagerlef
 
20.10.14
13:15
ну понятно что я не буду только на этот метод полагаться, но просто интересно уже стало как так-то?
14 mergan
 
20.10.14
13:16
(10)я вас слушаю
15 mergan
 
20.10.14
13:17
(13)запросом кошернее такие данные получать
16 Тындр
 
20.10.14
13:17
Напомнило
"Нажмите любую клавишу.
НО ТОЛЬКО НЕ ЭТУ"
Находит по реквизиту первый попавшийся склад с указанным типом цен. Что просили - то и получили. Нужно конкретный склад - запишите его в константу.
17 Lagerlef
 
20.10.14
13:18
(15) Мне пока запретили обновлять конфу, а это туда вписано предыдущим разработчиком
18 ObjectRelation Model
 
20.10.14
13:27
(14) ты меня читаешь, а в (9) ложное утверждение
19 Ник второй
 
20.10.14
13:29
(9) Ложь.
20 1dvd
 
20.10.14
13:31
(19) Не ложь, а клади
21 Enterprise
 
20.10.14
13:39
(13) По GUID их сравни
22 1dvd
 
20.10.14
13:40
(21) в семерке нет гуидов :)
23 mergan
 
20.10.14
13:43
(18)ну давай рассказывай
24 Enterprise
 
20.10.14
13:46
(22) Речь о 7.7? ))
25 ObjectRelation Model
 
20.10.14
13:55
(23) что тебе рассказать?
26 mergan
 
20.10.14
14:00
(25)как инсерт добавляет запись в таблицу
27 ObjectRelation Model
 
20.10.14
14:01
(26) нормально добавляет, а что?
28 mergan
 
20.10.14
14:03
(27)нормально это как?
29 ObjectRelation Model
 
20.10.14
14:04
(28) я не понимаю твоего вопроса, подозреваю, что записывает данные на диск, или про что ты?
30 mergan
 
20.10.14
14:28
я про порядок
31 ObjectRelation Model
 
20.10.14
14:51
(30) я не архитектор СУБД, не знаю
32 palpetrovich
 
20.10.14
15:02
(0) а что, СкладКомпании можно найти исключительно по реквизиту "ТипЦенРозничнойТорговли"?
имхо, не том направлении двигаетесь :)
33 mergan
 
20.10.14
15:08
(31)более чем странно, тем более утверждаешь при этом что сказанное в (9) ложь
34 ObjectRelation Model
 
20.10.14
15:14
(33) потому что тот же шринк может страницы таблиц поменять местами, какая уверенность, что после этого они будут выбираться в исходном порядке?
35 mergan
 
20.10.14
15:30
(34)то есть (8) ты прочитать не осилил ... да?
36 ObjectRelation Model
 
20.10.14
15:59
(35) у тебя (8) и (9) видимо противоречат друг другу
37 Lagerlef
 
21.10.14
05:26
(24) речь о 8.2
(32) в данный момент нужен поиск по типу цен
(21)
67e2d921-b599-11df-8eff-001a64a1c572 - Первый склад
3c5e997e-e289-11e1-8c0e-00259018146d  - второй (который выбирается методом Найтипореквизиту)
38 Chameleon1980
 
21.10.14
06:35
может
3c5e997e-e289-11e1-8c0e-00259018146d
меньше
67e2d921-b599-11df-8eff-001a64a1c572
39 Lagerlef
 
21.10.14
06:55
Выбираю запросом, ставлю автоупорядочивание - выдает склады по порядку, сначала первый, потом второй

Дальше пишу в запросе выбрать Первые 1 - выдает только второй склад =))))

Сделала в итоге как мне надо упорядочив по коду =)
40 НафНаф
 
21.10.14
08:04
(39) выбрать Первые 1 надо писать с упорядочиванием
41 Мимохожий Однако
 
21.10.14
08:16
(17)ОФФ: Это правильно.
42 palpetrovich
 
21.10.14
12:41
(37)  если "в данный момент нужен поиск по типу цен" - то у каждого склада тип цен должен быть "уникальный", типа:
ТипЦенРозничнойТорговлиСклад1
ТипЦенРозничнойТорговлиСклад2
...
43 Enterprise
 
21.10.14
14:48
(39) В запросах сравнивается бинарное представление GUID, которое хранится в БД