|
Помогите сделать запрос | ☑ | ||
---|---|---|---|---|
0
Aleksandr_
Nikonov 07.08.15
✎
09:20
|
Доброго дня! В документе "Заказ Клиента" в 1с 8 (Управление торговлей)
Необходимо получить цену по виду "Закупочная" помогите написать запрос получения цены Для чего это нужно?... дело в том что клиент (заказчик) хочет что бы в документе рассчитывалась сумма прибыли как по строкам так и по документу для этого мне необходимо получить цену закупки (себестоимость товара) помогите я в запросов почти не знаю. |
|||
1
elCust
07.08.15
✎
09:22
|
Как то не логично получается:
>> дело в том что клиент (заказчик) хочет >> помогите я в запросов почти не знаю. Если не знаешь, зачем клиенты? |
|||
2
zak555
07.08.15
✎
09:23
|
так тебе не цена нужна, а себестоимость
|
|||
3
sFAQer
07.08.15
✎
09:25
|
(0) Тебе бы не запросы, а мат часть сначало покурить. а вообще открой отчёт валовая прибыль и смотри как собирается
|
|||
4
sFAQer
07.08.15
✎
09:26
|
+ к (3) а ещё УТ 11.1 научилась считать маржу прям в заказах, посмотри как там сделано
|
|||
5
zak555
07.08.15
✎
09:26
|
ты лучше сделай обработку ТЧ заполнения цены продажи от себестоимости
|
|||
6
sFAQer
07.08.15
✎
09:27
|
(5) это где так мощно ценовую политику ведут?
|
|||
7
sash-ml
07.08.15
✎
09:28
|
это ж заказ, по какой себестоимости он пойдет в реализацию неизвестно, так что прибыль в любом случае будет приблизительная.
|
|||
8
Aleksandr_
Nikonov 07.08.15
✎
09:36
|
Хорошо вот я запрос нарисовал подскажите в чем ошибка? просто он не работает (не выбирает значений(( )
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.Цена |ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних |ГДЕ | ЦеныНоменклатурыСрезПоследних.Период = &Дат | И ЦеныНоменклатурыСрезПоследних.Валюта.Ссылка = &Валюта | И ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка = &Тов | И ЦеныНоменклатурыСрезПоследних.ВидЦены.Ссылка = &Вид | И ЦеныНоменклатурыСрезПоследних.Характеристика.Ссылка = &Характ"; Запрос.УстановитьПараметр("Валюта", Валюта.Ссылка); Запрос.УстановитьПараметр("Вид", Вид.Ссылка); Запрос.УстановитьПараметр("Дат", Дат); Запрос.УстановитьПараметр("Тов", Тов.Ссылка); Запрос.УстановитьПараметр("Характ", Характ.Ссылка); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ЦенаЗак = ВыборкаДетальныеЗаписи.цена; КонецЦикла; |
|||
9
Aleksandr_
Nikonov 07.08.15
✎
09:37
|
+(7) я делаю так как попросили им так нужно а не мне )
|
|||
10
VikingKosmo
07.08.15
✎
09:39
|
(8) ошибка в запросе... И вообще, позовите специалиста!!!
|
|||
11
Aleksandr_
Nikonov 07.08.15
✎
09:40
|
(10) вас попросили помочь! я сам себе специалист!
|
|||
12
Aleksandr_
Nikonov 07.08.15
✎
09:41
|
+(10) то что ошибка в запросе это и без того понятно где?
|
|||
13
Sanek_GAL
07.08.15
✎
09:43
|
(12) | РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
|ГДЕ | ЦеныНоменклатурыСрезПоследних.Период = &Дат вот здесь, тут надо как минимум: РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дат) КАК ЦеныНоменклатурыСрезПоследних , а из ГДЕ убирать |
|||
14
Sanek_GAL
07.08.15
✎
09:43
|
+(13) ты запрос в цикле по ТЧ этот гоняешь?
|
|||
15
Aleksandr_
Nikonov 07.08.15
✎
09:45
|
(13) спасибо буду пробовать!
|
|||
16
Aleksandr_
Nikonov 07.08.15
✎
09:46
|
(14) нет в функции подбора товара
|
|||
17
Metman
07.08.15
✎
09:47
|
(13) там все надо в параметры ВТ пихать.
|
|||
18
Sanek_GAL
07.08.15
✎
09:48
|
(17) Это да, но не работает именно из-за даты
|
|||
19
Metman
07.08.15
✎
09:48
|
(10) Скачай консоль запросов. Посмотри лекции от Чистова по запросам.
|
|||
20
Metman
07.08.15
✎
09:50
|
(10) -> (11)
|
|||
21
vicof
07.08.15
✎
09:51
|
(8) А зачем везде .Ссылка пихать?
|
|||
22
Aleksandr_
Nikonov 07.08.15
✎
09:52
|
(21) а что без ссылка будет работать?
|
|||
23
Sanek_GAL
07.08.15
✎
09:53
|
(22) Ну если ты передаешь туда ссылки, то будет... Ты же не объекты передаешь?
|
|||
24
Metman
07.08.15
✎
09:53
|
(22) ты не поверишь...
|
|||
25
Aleksandr_
Nikonov 07.08.15
✎
09:55
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.Цена |ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дат) КАК ЦеныНоменклатурыСрезПоследних //|ГДЕ //| ЦеныНоменклатурыСрезПоследних.Период = &Дат //| И ЦеныНоменклатурыСрезПоследних.Валюта.Ссылка = &Валюта | И ЦеныНоменклатурыСрезПоследних.Номенклатура = &Тов | И ЦеныНоменклатурыСрезПоследних.ВидЦены = &Вид | И ЦеныНоменклатурыСрезПоследних.Характеристика = &Характ"; //Запрос.УстановитьПараметр("Валюта", Валюта.Ссылка); Запрос.УстановитьПараметр("Вид", Вид); Запрос.УстановитьПараметр("Дат", Дат); Запрос.УстановитьПараметр("Тов", Тов); Запрос.УстановитьПараметр("Характ", Характ); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ЦенаЗак = ВыборкаДетальныеЗаписи.цена; КонецЦикла; ошибку выдает (( {Документ.ЗаказКлиента.Форма.ФормаДокумента.Форма(1174)}: Ошибка при вызове метода контекста (Выполнить) Результат = Запрос.Выполнить(); по причине: {(5, 2)}: Синтаксическая ошибка "И" <<?>>И ЦеныНоменклатурыСрезПоследних.Номенклатура = &Тов |
|||
26
Metman
07.08.15
✎
09:57
|
расскоментируй ГДЕ и убери первое И
|
|||
27
Sanek_GAL
07.08.15
✎
09:57
|
(25) Жестоко...
Перед ГДЕ комментарий убери, и здесь "И ЦеныНоменклатурыСрезПоследних.Номенклатура = &Тов" И убери |
|||
28
Aleksandr_
Nikonov 07.08.15
✎
09:59
|
уже сделал (((( в (13) не правильно понял ))))))
|
|||
29
Мимохожий Однако
07.08.15
✎
10:01
|
ОФФ: Опять лисапеды...
|
|||
30
Aleksandr_
Nikonov 07.08.15
✎
10:03
|
все запрос работает (но меня (7) заинтриговал) почему я получу не ту себестоимость (цену закупки?) (они ее называют себестоимостью )))
|
|||
31
Aleksandr_
Nikonov 07.08.15
✎
10:04
|
+(30) я же получаю по виду и на дату что не так может быть?
|
|||
32
Aleksandr_
Nikonov 07.08.15
✎
10:10
|
?
|
|||
33
Sanek_GAL
07.08.15
✎
10:14
|
(31) Уже писали - открой отчет Валовая прибыль, там есть Себестоимость - смотри как получается.
|
|||
34
Мимохожий Однако
07.08.15
✎
10:16
|
Писатель
|
|||
35
Aleksandr_
Nikonov 07.08.15
✎
10:22
|
(33) там себестоимость вообще пустая (
|
|||
36
VikingKosmo
07.08.15
✎
10:26
|
(35) а ничего, что ее еще посчитать нужно?
|
|||
37
Aleksandr_
Nikonov 07.08.15
✎
10:32
|
)
|
|||
38
Kvant1C
07.08.15
✎
10:41
|
(36) необязательно. Если у него закупочная цена близка к себестоимости, то вполне себе можно посчитать приблизительную прибыль, как стоимость в продажных ценах минус стоимость в закупочных. При этом чем ближе закупочная цена к себестоимости, тем точней будет результат. Можно вообще замутить отдельный тип цен - себестоимость и закинуть в него нужные цифры и соответственно использовать его вместо закупочных цен при расчете прибыли, но все равно это будет приблизительная прибыль.
|
|||
39
Aleksandr_
Nikonov 07.08.15
✎
10:49
|
(38) у них закупочния = себестоимость )
|
|||
40
Metman
07.08.15
✎
10:52
|
(39) Будь готов к вопросам, типа "Где деньги, Зин?". Когда по их подсчетам они миллионеры, а в реале еле-еле концы с концами сводят. Как в анекдоте про вируальную реальность.
|
|||
41
Aleksandr_
Nikonov 07.08.15
✎
10:56
|
(40) дело в том что у них уже есть программа 1с 7 в ней реализовано именно так подсчет прибыли вот я и делаю так как там у них реализовано если есть предложения предлагайте ситуация такая менеджер должен всегда видеть в документе прибыль и процент рентабельности как данное реализовать?
постоянно создавать документы (распределение расходов на себестоимость товаров и Расчет себестоимости?) |
|||
42
Aleksandr_
Nikonov 07.08.15
✎
10:58
|
вот вырезка кода получения прибыли и расчета процента рентабельности из 1с 7 (их конфиги)
//_____________________________________________________________________________ Функция ИтоговаяСтрока() ИтСтр = "Итого по заявке на сумму: " + СокрЛ(Формат(Итог("СуммаН"),"Ч20 ,")) +" Рентабельность: " + СокрЛ(Формат(Итог("СуммаПрибыли"),"Ч20 ,"))+ " Процент рентабельности: " + СокрЛ(Формат(?(Итог("Продажная")=0,0,(Итог("СуммаПрибыли")/Итог("Продажная")*100)),"Ч10.5")); Возврат ИтСтр; КонецФункции //СтрокаИтого //_________________________ Процедура Пересчет() Если (Форма.ТекущаяКолонка() = "КоличествоТовара") или (Форма.ТекущаяКолонка() = "Уценка") Тогда КоличествоТовараЯщ=КоличествоТовара/НаименованиеТовара.КолвоВТаре; СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); ИначеЕсли (Форма.ТекущаяКолонка() = "КоличествоТовараЯщ") Тогда КоличествоТовара=КоличествоТовараЯщ*НаименованиеТовара.КолвоВТаре; СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); ИначеЕсли (Форма.ТекущаяКолонка() = "Скидка") Тогда Если (Скидка<>0) и (Наценка<>0) Тогда Наценка=0; КонецЕсли; ЦенаТовара=Окр(НаименованиеТовара.Цена-НаименованиеТовара.Цена*Скидка/100+НаименованиеТовара.Цена*Наценка/100); СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); РентаПер=Окр(СуммаПрибыли/Продажная*100,2); Если ПустоеЗначение(НаименованиеТовара.ГруппаНаценок)=0 Тогда Если РентаПер<НаименованиеТовара.ГруппаНаценок.Наценка Тогда Предупреждение("Данная цена<минимальной рентабельности по товару:"+НаименованиеТовара.ГруппаНаценок.Наценка); ЦенаТовара=Окр(НаименованиеТовара.Цена); Скидка=0; СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); КонецЕсли; Иначе Если ЦенаТовара<НаименованиеТовара.Себестоимость Тогда Предупреждение("Данная цена<себестоимости по товару:"+НаименованиеТовара.Себестоимость); ЦенаТовара=Окр(НаименованиеТовара.Цена); Скидка=0; СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); КонецЕсли; КонецЕсли; ИначеЕсли (Форма.ТекущаяКолонка() = "Наценка") Тогда Если (Скидка<>0) и (Наценка<>0) Тогда Скидка=0; КонецЕсли; ЦенаТовара=Окр(НаименованиеТовара.Цена-НаименованиеТовара.Цена*Скидка/100+НаименованиеТовара.Цена*Наценка/100); Если НаименованиеТовара.Предел<>0 Тогда ПерНаценка=Окр((ЦенаТовара-?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость))/?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)*100,2); Если НаименованиеТовара.Предел<ПерНаценка Тогда Сообщить("Предельная наценка по товару: "+НаименованиеТовара.Предел); Наценка=НаименованиеТовара.Предел-Окр((НаименованиеТовара.Цена-?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость))/?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)*100,2); КонецЕсли; КонецЕсли; ЦенаТовара=Окр(НаименованиеТовара.Цена-НаименованиеТовара.Цена*Скидка/100+НаименованиеТовара.Цена*Наценка/100); СуммаН = Окр(КоличествоТовара*ЦенаТовара,0,1); Если епта=1 Тогда СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); Иначе СуммаПрибыли=СуммаН-КоличествоТовара*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость)-Уценка*?(НаименованиеТовара.ЦенаИзготовителя1<>0,НаименованиеТовара.ЦенаИзготовителя1,НаименованиеТовара.Себестоимость); КонецЕсли; Если СуммаН<>0 Тогда ПроцентНац=СуммаПрибыли/(СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100))*100; КонецЕсли; Продажная=СуммаН*(1+НаименованиеТовара.СтавкаНДС.Ставка/100); Рента=Окр((Итог("СуммаПрибыли")/Итог("Продажная")*100),2); КонецЕсли; КонецПроцедуры |
|||
43
Aleksandr_
Nikonov 07.08.15
✎
11:00
|
Епта это типа статус документа (принято или нет) дело в том что они в нем формируют так же дополнительный товар на отгрузку и если принято ответственном лицом тогда епта = 1 если не принято тогда епта = 0 ))))))
|
|||
44
VikingKosmo
07.08.15
✎
11:03
|
Если у тебя уж УТ 11 и речь идет о документе ЗаказКлиента открой для себя контекстный отчет Оценка рентабельности продажи
|
|||
45
VikingKosmo
07.08.15
✎
11:03
|
(44) но для него все равно нужен проведенный документ Расчет себестоимости
|
|||
46
Aleksandr_
Nikonov 07.08.15
✎
11:07
|
(44) у меня УТ 3.0.15.4
|
|||
47
VikingKosmo
07.08.15
✎
11:08
|
(46) не слышал про такое ни разу...
|
|||
48
Aleksandr_
Nikonov 07.08.15
✎
11:08
|
Для РБ
|
|||
49
Aleksandr_
Nikonov 07.08.15
✎
11:09
|
Управление торговлей для Беларуси, редакция 3.0
|
|||
50
Aleksandr_
Nikonov 07.08.15
✎
11:10
|
отчета такого нет(
|
|||
51
VikingKosmo
07.08.15
✎
11:10
|
(48) ну если это переделка УТ 11, то в документе Заказ клиента, по идее должен быть отчет, о котором я говорил. Хотя и не факт конечно
|
|||
52
VikingKosmo
07.08.15
✎
11:10
|
(50) печально
|
|||
53
Aleksandr_
Nikonov 07.08.15
✎
11:11
|
в документе тоже нет (
|
|||
54
Aleksandr_
Nikonov 07.08.15
✎
11:11
|
это наверное да это переделка но она типовая покупалась у фирмы 1с ))))))
|
|||
55
VikingKosmo
07.08.15
✎
11:12
|
(54) ну передай пламенный привет фирме 1С. В УТ 11 есть отчет, который показывает, то что ты там пытаешься сделать
|
|||
56
Aleksandr_
Nikonov 07.08.15
✎
11:12
|
есть только отчет анализ цен и все )
|
|||
57
Aleksandr_
Nikonov 07.08.15
✎
11:13
|
(55) можешь слить его отдельной обработкой?
|
|||
58
Aleksandr_
Nikonov 07.08.15
✎
11:13
|
или же весь документ?
|
|||
59
Metman
07.08.15
✎
11:13
|
УФ или обычные?
|
|||
60
Aleksandr_
Nikonov 07.08.15
✎
11:14
|
УФ
|
|||
61
Aleksandr_
Nikonov 07.08.15
✎
11:14
|
||||
62
Aleksandr_
Nikonov 07.08.15
✎
11:16
|
нашел отчет называется валовая прибыль по заказам
ну хоро да это бы подошло но как тогда работать? |
|||
63
VikingKosmo
07.08.15
✎
11:16
|
(62) исходя из методических рекомендаций фирмы 1С?
|
|||
64
Aleksandr_
Nikonov 07.08.15
✎
11:17
|
распишите схемму формирования документов какие документы нужно делать и как часто что бы получать верные цифры в данный отчет
|
|||
65
VikingKosmo
07.08.15
✎
11:18
|
(64) обратись с таким вопросом в фирму 1С. Тут тебя ни кто, особенно бесплатно, учить работать в типовых конфигурациях 1С не будет
|
|||
66
Aleksandr_
Nikonov 07.08.15
✎
11:19
|
) ну и за то спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |