|
v7: Подскажите почему запрос не работает с условием на фирму | ☑ | ||
---|---|---|---|---|
0
TwoWorld
25.01.12
✎
12:53
|
Запрос = мБаза.CreateObject("Запрос");
ТекстЗапроса = "Период с '" + НачПериода + "' по '" + КонПериода + "'; |КодНоменклатуры = Регистр.ПартииНаличие.Номенклатура.Код; |Номенклатура = Регистр.ПартииНаличие.Номенклатура; |Фирма = Регистр.ПартииНаличие.Фирма; |Количество = Регистр.ПартииНаличие.Количество; |СуммаРуб = Регистр.ПартииНаличие.СуммаРуб; |Функция КоличествоКонОст = КонОст(Количество); |Функция СуммаРубНачОст = Сумма(СуммаРуб); |Условие (Фирма.Код=ПарФирмаТек); |Группировка Номенклатура Без Групп;"; ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"ПарФирмаТек",""+КодФирмы+""); |
|||
1
TwoWorld
25.01.12
✎
12:55
|
(0)КодФирмы - это строка, в которой задается код фирмы в 7.7
|
|||
2
TwoWorld
25.01.12
✎
14:29
|
ребят подскажите как правильно условие поставить?
СО = мБаза.CreateObject("Справочник.Фирмы"); ФирмаТек = ""; если СО.НайтиПоКоду(КодФирмы,0) = 1 Тогда ФирмаТек = Со.ТекущийЭлемент().Код; КонецЕсли; Запрос = мБаза.CreateObject("Запрос"); ТекстЗапроса = "Период с '" + НачПериода + "' по '" + КонПериода + "'; |КодНоменклатуры = Регистр.ПартииНаличие.Номенклатура.Код; |Номенклатура = Регистр.ПартииНаличие.Номенклатура; |Фирма = Регистр.ПартииНаличие.Фирма; |Количество = Регистр.ПартииНаличие.Количество; |СуммаРуб = Регистр.ПартииНаличие.СуммаРуб; |Функция КоличествоКонОст = КонОст(Количество); |Функция СуммаРубНачОст = Сумма(СуммаРуб); |Группировка Номенклатура Без Групп; |Условие (Фирма.Код=ПарФирмаТек);"; ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"ПарФирмаТек",ФирмаТек); |
|||
3
dk
25.01.12
✎
14:34
|
а ссылки на фирму нет? только код разве?
|
|||
4
1Сергей
25.01.12
✎
14:35
|
ЗнавчениеВстроку/изСтроки
|
|||
5
miki
25.01.12
✎
14:36
|
параметр сделать с типом фирмы не предлагать?
|
|||
6
1Сергей
25.01.12
✎
14:37
|
(5) у него оля
|
|||
7
miki
25.01.12
✎
14:38
|
(6)можно найти сначала фирму по коду
|
|||
8
1Сергей
25.01.12
✎
14:39
|
(7) дык, он её и находит вначале
|
|||
9
dk
25.01.12
✎
14:43
|
раз ОЛЯ
то либо извращаться с значениеизстрокивнутр либо СокрЛП(Фирма.Код)=СокрЛП(""ПарФирмаТек"") |
|||
10
miki
25.01.12
✎
14:43
|
а зачем сравнивает с кодом, а не с ссылкой?
|
|||
11
1Сергей
25.01.12
✎
14:46
|
(10) а как ты ещё передашь переменную в запрос подключаемой базе? тут либо изврат с (4) либо задействовать глобальную переменную
|
|||
12
Ёпрст
25.01.12
✎
14:49
|
(0) за условие Условие (Фирма.Код
нужно молоточком по темечку.. |
|||
13
hhhh
25.01.12
✎
14:49
|
по наименованию надо, поиск по коду - глючная штука.
|
|||
14
Ёпрст
25.01.12
✎
14:50
|
+12 а по теме - СокрЛП спасёт в тексте запроса
|
|||
15
1Сергей
25.01.12
✎
14:50
|
(13) бугага :)
|
|||
16
miki
25.01.12
✎
14:52
|
(11)точно, ты прав.
|
|||
17
Джинн
25.01.12
✎
14:52
|
(12) Лучше по рукам. Может выпрямятся.
|
|||
18
суицид
25.01.12
✎
15:03
|
(11)через значение из строки внутр
|
|||
19
TwoWorld
25.01.12
✎
15:11
|
А так взлетит:
СО = мБаза.CreateObject("Справочник.Фирмы"); ФирмаТек = ""; если СО.НайтиПоКоду(КодФирмы,0) = 1 Тогда ФирмаТек = Со.ТекущийЭлемент().Код; КонецЕсли; Запрос = мБаза.CreateObject("Запрос"); ТекстЗапроса = "Период с '" + НачПериода + "' по '" + КонПериода + "'; |КодНоменклатуры = Регистр.ПартииНаличие.Номенклатура.Код; |Номенклатура = Регистр.ПартииНаличие.Номенклатура; |Фирма = Регистр.ПартииНаличие.Фирма; |Количество = Регистр.ПартииНаличие.Количество; |СуммаРуб = Регистр.ПартииНаличие.СуммаРуб; |Функция КоличествоКонОст = КонОст(Количество); |Функция СуммаРубНачОст = Сумма(СуммаРуб); |Группировка Номенклатура Без Групп; |Условие (Фирма.Код="""+СокрЛП(ФирмаТек)+""");"; |
|||
20
Ёпрст
25.01.12
✎
15:12
|
(19) нет.
И это, Не пиши в тексте запроса Условие (Фирма.Код никогда, а то поколотят когда нить. |
|||
21
TwoWorld
25.01.12
✎
15:14
|
(20) тогда так
|Условие (Фирма.Наименование="""+СокрЛП(ФирмаТек)+""");"; СО = мБаза.CreateObject("Справочник.Фирмы"); ФирмаТек = ""; если СО.НайтиПоКоду(КодФирмы,0) = 1 Тогда ФирмаТек = Со.ТекущийЭлемент().Наименование; КонецЕсли; |
|||
22
Ёпрст
25.01.12
✎
15:17
|
(21) а за это - уволят
|
|||
23
Ёпрст
25.01.12
✎
15:18
|
|КодФирма = Регистр.ПартииНаличие.Фирма.Код;
|Условие(СокрЛП(КодФирма) = ="""+СокрЛП(ФирмаТекКод)+""");"; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |