Перейти к содержимому


Публикации oknik

37 публикаций создано oknik (учитываются публикации только с 19-Апрель 23)



#38873 создание записи через API

Отправлено от oknik в 26 Сентябрь 2018 - 22:28 in Как это сделать

при создании записи через API возвращается ответ

HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Wed, 26 Sep 2018 19:20:14 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: *

что может быть не так?

аутентификацию проходит, и чтение из таблицы по фильтру производит, а создание записи не делает.
в настройках доступа вроде бы все галочки стоят.



#38864 взять из фио только имя

Отправлено от oknik в 23 Сентябрь 2018 - 23:38 in Как это сделать

существуют ли какие то БД? и скрипты для того что бы отдельно в поле ИМЯ парсилось имя из поля ФИО



#38650 проверка поля связи на 0 и отмена изменений

Отправлено от oknik в 28 Май 2018 - 19:25 in Как это сделать

Просмотр сообщенияCbCoder (24 Май 2018 - 10:12) писал:

1. Так вы же сами поставили "НЕ равно нулю". Естественно что не сработает.
я не понятно выразился.
в общем у меня в этом поле стоит 0, и все равно вычисление идет дальше как будто бы условие выполняется.
оно же не должно сработать, т.е. оно должно срабатывать как раз таки когда НЕ "0", а оно "0"

Просмотр сообщенияCbCoder (24 Май 2018 - 10:12) писал:

2. После $event['changed'] должен стоять id поля как число, а не его внутреннее имя: $event['changed'][6231]['old'];
так тоже не работает. записывается "0", хотя строе значение было не "0"



#38649 изменение через вычисление в таблице f_module_asterisk_users

Отправлено от oknik в 28 Май 2018 - 18:12 in Как это сделать

Просмотр сообщенияAntonKravchenko (24 Май 2018 - 00:48) писал:

sql_query("UPDATE f_module_asterisk_users SET from_browser=1 WHERE user_id='".$line['Пользователь']."'");

текст запроса нужно взять в кавычки, а также точку с запятой поставить после кода (не внутри)
большое спасибо!



#38633 проверка поля связи на 0 и отмена изменений

Отправлено от oknik в 23 Май 2018 - 17:39 in Как это сделать

1. проверка поля связи на не заполненность $line['По счету']['raw']!=0 - не срабатывает, думает всегда что не 0, хотя на самом деле 0 (пробовал и с ['raw'] и без ['raw'] и так !="0" и эдак !='0')
2. возврат старого значения по этому же полю связи не возвращает старое значение, а возвращает 0 (пробовал тоже там ['raw'] по всякому подставлять, не работает все равно)
if ($line['По счету']['raw']!=0 and $line['Сданы']=="Да") {
$line['По счету']=$event['changed']['f6231']['old']; // возвращаем старое значение счета
display_notification("!!!НЕ сохранено!!! Данный платеж уже проведен по счету, обратитесь к вашему руководителю !!!", 2);
}
подскажите пожалуйста что не правильно делаю?



#38630 получить значение поля связи из таб. "сотрудники"

Отправлено от oknik в 23 Май 2018 - 14:50 in Как это сделать

в таб сотрудники есть поле связи филиал,
в таб задачи есть такое же точно поле связи филиал

надо из таб задачи обратиться в таб сотрудники взять значение из это поля и присвоить его в поле филиал таб задачи

делаю так и поле остается пустым

$filial = data_select_field(46,  'f18191', '`f1400`=',$line['Исполнитель']) ;
$line['Филиал исполнителя'] = $filial;

проверял sql запрос
SELECT f18191
f_data46
where f1400=711

дает результат = 2 (так и должно быть)

ps пикрепление файлов к постам не работает. браузер хром.



#38629 проверка множественный список содержит слово

Отправлено от oknik в 23 Май 2018 - 13:19 in Как это сделать

Просмотр сообщенияCbCoder (10 Апрель 2018 - 09:16) писал:

Это сработает только если в поле выбрано одно значение, а множественный список как раз подразумевает что их может быть несколько. Поэтому первый ваш вариант более правильный, единственное в чем вы ошиблись - в случае с русскими словами надо использовать mb_strpos - она корректно работает с юникодом, а strpos - только с однобайтными кодировками.
Тогда подскажите еще, как быть с запросами через api к такому полю (блок filter)? Если например выбрано несколько значений, а нам нужно проверить наличие одного.

"filter": { "row": { "status": { "term": "=", "value": 0, "union": "AND" }, "f807": { "term": "=", "value": 172, "union": "AND" } }

что указывать в "term": ???



#38628 при запросе COUNT из базы не приходит 0

Отправлено от oknik в 23 Май 2018 - 12:16 in Как это сделать

Просмотр сообщенияCbCoder (22 Май 2018 - 17:32) писал:

Не считайте просто текущую в случае события на удаление. Событие проверяется через $event['type'], в случае удаления оно равно 'delete'.
а где это писать?
вернее как сделать так что бы при sql запросе эту запись считать тоже?

- есть таб 1
- и есть таб 2,3,4
- в 2,3,4 надо что бы при удалении вызывалось вычисление в таб1 (которое как раз и делает sql запросы)
- в таб 1 для этого есть поле X которое при изменении вызывает это вычисление (sql запросы)
- в таб 2,3,4 есть вычисления которые при удалении меняют значение в поле X

вопрос:
где проверять событие $event['type']? и не понятно что это в итоге даст?



#38627 изменение через вычисление в таблице f_module_asterisk_users

Отправлено от oknik в 23 Май 2018 - 12:14 in Как это сделать

подскажите пожалуйста как правильно запрос сделать на обновление данных?

вот так:
sql_query(UPDATE f_module_asterisk_users SET from_browser=1  WHERE user_id='".$line['1400']."';)/>/> 

выдает ошибку:
syntax error, unexpected 'f_module_asterisk_users' (T_STRING), expecting ',' or ')'



#38625 при запросе COUNT из базы не приходит 0

Отправлено от oknik в 22 Май 2018 - 14:19 in Как это сделать

Просмотр сообщенияCbCoder (22 Май 2018 - 10:59) писал:

Так и есть, событие на удаление вызывается до удаления, с той целью чтобы его можно было отменить. Просто учитывайте этот факт у себя в вычислении.

а как тогда правильно сделать?
вешать не на удаление а на изменение поля "статус"?

попробовал, но тоже самое.



#38623 при запросе COUNT из базы не приходит 0

Отправлено от oknik в 21 Май 2018 - 20:26 in Как это сделать

есть таб Контрагенты и в ней поле "Наличие документов" в котором хранится общее кол-во всех документов контрагента (договора, счета, акты):

в таб Договора, Счета и Акты есть вычисления которое срабатывает при сохранении, удалении, восстановлении записей.
данное вычисление увеличивает счетчик в таб Контрагенты, на котором висит вычисление (см. ниже)

все рабоатет за исключением того, что если удалить все документы, то все равно из базы приходит значение 1, т.е. 0 никак не получается.
в базе при этом точно нет записей соответствующих фильтрам.


//договора
$sqlQuery = "SELECT COUNT(*) as summa FROM ".DATA_TABLE."78 WHERE status=0 and f849='".$line['ID']."'";
$res = sql_query($sqlQuery);
$row = sql_fetch_assoc($res);
$summa1 = $row['summa'];

//счета
$sqlQuery = "SELECT COUNT(*) as summa FROM ".DATA_TABLE."43 WHERE status=0 and f839='".$line['ID']."'";
$res = sql_query($sqlQuery);
$row = sql_fetch_assoc($res);
$summa2 = $row['summa'];

//акты
$sqlQuery = "SELECT COUNT(*) as summa FROM ".DATA_TABLE."81 WHERE status=0 and f871='".$line['ID']."'";
$res = sql_query($sqlQuery);
$row = sql_fetch_assoc($res);
$summa3 = $row['summa'];
$line['Наличие документов']=$summa1+$summa2+$summa3;

и еще, если есть 3 документа, и например удалить один, то значение остается 3, когда удаляешшь еще один, становится 2 и т.д. т.е как будто бы вычисление срабатывает до того как по факту удаляются записи. такое возможно?



#38557 проверка множественный список содержит слово

Отправлено от oknik в 09 Апрель 2018 - 21:22 in Как это сделать

ясно, понятно....
проверяется так же как и обычное поле список
т.е. например так $line['Ошибки']!="Разм"



#38556 проверка множественный список содержит слово

Отправлено от oknik в 09 Апрель 2018 - 20:16 in Как это сделать

что то не получается, оно и понятно что. т.к. поле $line['Ошибки'] - это список с множественным выбором, и нужно проверить есть ли в нем слово "Разм"

$text_check = "";
if (strpos($line['Ошибки'], "Разм")  !== false ) $text_check = "Есть";
if (
$text_check == "Есть"
and
$line['Домен (ссылка)'] != ""
and
$line['Категория'] != ""
and
($line['Название проекта'] != "" or $line['Название проекта'] != "Введите название!!!")
and
$line['Папка на сервере'] == "Да"
)
$line['Готовность Api KB'] = 1;

без проверки этого поля все работает как надо



#38506 сумма из таблицы из таблицы

Отправлено от oknik в 28 Март 2018 - 01:23 in Как это сделать

это стандартная конфигурация, в ней есть склад и там было поле "остаток", мы добавили поле "резерв"
есть таблица "расход со склада" с "позициями расхода" у которых есть статус "резерв"
требуется посчитать колво товаров которых находятся в резерве (везде и в складе и в позициях расхода общее поле "Наименование" - связь с таб. "Прайс Лист")

Просмотр сообщенияplotnikov (17 Март 2018 - 10:31) писал:

Не очень понятно где и какие поля, но как минимум в запросе должно быть $line['Наименование']['raw']
А не $line['Наименование']['id']['raw']
А так вообще по нолям остается.



#38505 api post запрос кол-ва строк в таблице с фильтром

Отправлено от oknik в 28 Март 2018 - 01:14 in Как это сделать

подскажите пожалуйста можно ли через post запрос получить кол-во строк в таблице1 с включенным фильтром1
может пример есть? или пример накидает кто нибудь.



#38481 сумма из таблицы из таблицы

Отправлено от oknik в 17 Март 2018 - 03:33 in Как это сделать

$sqlQuery = "SELECT sum(f1150) as sum_reserve FROM ".DATA_TABLE."90 WHERE status=0 and f6141='Резерв' and f1147='".$line['Наименование']['id']['raw']."'";
$res = sql_query($sqlQuery);
$row = sql_fetch_array($res);
$total_reserve = $row['sum_reserve'];
$line['В резерве'] = $total_reserve;


подскажите пожалуйста, что здесь не правильно?
в итоге не правильные цифры подтягиваются.

должны быть такие
http://f3.s.qip.ru/18ZobV5dP.png

а получаем это
http://f2.s.qip.ru/18ZobV5dO.png



#38462 самостоятельная регистрация клиента через внешнюю форму

Отправлено от oknik в 01 Март 2018 - 16:00 in Как это сделать

пользователь не создается до тех пор пока не отредактируешь контрагента руками



#38461 самостоятельная регистрация клиента через внешнюю форму

Отправлено от oknik в 01 Март 2018 - 15:14 in Как это сделать

У контрагента добавлено поле текст "Триггер рег клиент", при отправке формы на сайте оно скрыто от клиента и заполнено значением "siteReg"
Далее на этом поле висит вычисление при изменнии

// если триггер с текстом, то пишем в логин номер телефона для инициализации регистрации клиента и отправки ему ключей доступа
if ($line['Триггер рег клиент'] == "siteReg") {
$pregRepl =  preg_replace("/[^0-9]/", '', $line['Телефон']);
$line['Логин'] =  $pregRepl;
$line['Группа доступа'] = 777;
$line['Вид'] = "Юр.лицо";
$line['Триггер рег клиент'] = "regDone";
$line['Статус'] = "Регистрация";
}

в итоге все поля заполняются но отправка ключей клиенту не происходит.



#38460 самостоятельная регистрация клиента через внешнюю форму

Отправлено от oknik в 01 Март 2018 - 15:08 in Как это сделать

При отправке формы создается контрагент, заполняются поля "Группа доступа", "Логин", "Емаил", но клиенту не отправляется приглашение с ключами доступа.
Отправляется только если зайти в контрагента и нажать "Редактировать" и затем даже ничего не изменяя "Сохранить".



#38440 Сворачивание всплывающих напоминаний

Отправлено от oknik в 20 Февраль 2018 - 02:39 in Конфигурации

вууухаха ))
первый пост из двух что выше не актуальны для версии 2.0.11
час назад эти 2 поста добавил, потом обновился до 2.0.11 и оказывается как раз таки вышло обновление уведомлений )))



#38439 Сворачивание всплывающих напоминаний

Отправлено от oknik в 20 Февраль 2018 - 01:26 in Конфигурации

Просмотр сообщенияoknik (20 Февраль 2018 - 00:46) писал:

Кстати, если кому поднадоел "крайне жутко информативный" заголовок у уведомлений, его можно стилями скрыть.
При помощи стилей можно скрыть этот заголовок, текст напоминания поднять чуть повыше.
Что касается своего собственного заголовка, то его можно в тексте шаблона в самом начале писать какой хочешь.

стили для реализации:

делаем у заголовка прозрачный шрифт (сам блок с заголовком скрыть не получается, т.к. в нем лежит кнопка закрытия уведомления, так что используется такой метод)
.event_bubble .event_header{
	color: transparent !important;
}


сам текст напоминания подвигаем повыше на место заголовка, что бы пустоты в шапке не осталось

.event_bubble .event_content{
	margin-top: -25px;
}

а кнопку "закрыть" двигаем в самый угол уведомления
.event_tooltip_close {
    margin-right: -10px;
	margin-top: -5px;
}



PS дали бы разработчики в шаблоне напоминаний html писать и вычисления, мега инструмент был бы. да и вообще...



#38438 Сворачивание всплывающих напоминаний

Отправлено от oknik в 20 Февраль 2018 - 00:46 in Конфигурации

После обновления до 2.0.10 печаль беда, перестала эта чудоштука работать, да еще в догонку уведомления переместили в левую часть, так что они теперь перекрывают таблицу, что уж совсем неудобно, если уведомления накопились и их нет времени делать СЕЙЧАС, то это вообще капец.
Я не то что бы супер мастер, но есть вариант который отлично работает в 2.0.10.
Нужно всего лишь добавить немного CSS (больше ничего не нужно).

div#event_tooltip {
	position: fixed;
	bottom: 10px;
	right: 30px;
	width: 300px;
	z-index: 900;
	max-height: 90%;
	margin-left: -300px;
}

div#event_tooltip:hover {
	height:auto;
	overflow: auto;
	margin-left: -30px;
}

В итоге (не в обиду автору темы, ему безусловно респект) получилось даже лучше (на мой лично взгляд), потому что анимация не очень то и нужна в таком деле как crm - это все таки не презентация, а место где человек работает (кто то целыми днями) и тут куда важнее скорость и краткость.
Хотя к этим стилям можно еще и скрипт анимированного появляения добавить, в этом я уж не мостак, но можно и дальше допилить.
А еще один важный плюс - при загрузке страницы уведомления уже свернуты за экран (а не появляются, а потом исчезают) хотя может это и в варианте автора можно было сделать, тогда у меня еще навыков не было )

пример скрытого
пример открытого

ps админу форума: прикрепление файлов к постам уже давно не работает. браузер хром.



#38437 Ошибка при копировании записи вычислением (Out of range value for column...

Отправлено от oknik в 19 Февраль 2018 - 15:53 in Разработчикам

ДОБАВИЛИ ВЫЧИСЛЕНИЕ - КОПИРОВАНИЕ ИЗ ОДНОЙ ТАБЛИЦЫ В ДРУГУЮ
if ($line['Скопировано']=="Нет") {
$copy_call['Дата и время'] = $line['Дата и время начала'];
$copy_call['Длительность'] = $line['Длительность'];
$copy_call['Длительность в формате (ч:м:с)'] = $line['Длительность в формате (ч:м:с)'];
$copy_call['Дата и время конца'] = $line['Дата и время конца'];
$copy_call['Пользователь'] = $line['Пользователь']['raw'];
$copy_call['Номер'] = $line['Номер'];
$copy_call['Перенаправление'] = $line['Перенаправление'];
$copy_call['Направление'] = $line['Направление'];
$copy_call['Запись'] = $line['Запись'];
$copy_call['Аккаунт'] = $line['Аккаунт'];
$copy_call['Клиент'] = $line['Клиент']['raw'];
insert_query($copy_call,"Записи разговоров");
$line['Скопировано']="Да";
}

ПРИ СРАБОТКЕ ВЫЧИСЛЕНИЯ ВОЗНИКАЕТ ОШИБКА
Ошибка в вычислении.
Записи разговоров 2.Копирование в таб 1 : 69: 70: Ошибка SQL запроса: INSERT INTO f_data551 (f9181, f9191, f9201, f9211, f9231, f11731, f9241, f9261, f12891, user_id, add_time, status, f9221, r) VALUES ('2018-02-13 12:46:00', '0', '00:00:00', '2018-02-13 12:46:00', '79781208400', '79781208400', 'исходящий', '14888', '883140776406741@login.mtt.ru', '1', '2018-02-17 20:51:46', '0', '1', '1')
Out of range value for column 'id' at row 1



#38410 печать таблицы в 2 колонки

Отправлено от oknik в 29 Январь 2018 - 16:39 in Как это сделать

т.е. если например условно разбить на куски от 1 до 8 , то будут не так:
----
1|2
----
3|4
----
5|6
----
7|8
----

а вот так:
----
1|5
----
2|6
----
3|7
----
4|8
----

???



#38408 печать таблицы в 2 колонки

Отправлено от oknik в 29 Январь 2018 - 15:13 in Как это сделать

Просмотр сообщенияCbCoder (29 Январь 2018 - 09:40) писал:

А html вообще сам по себе разве поддерживает разделение одной таблицы на два "потока"? Две и более колонки можно отобразить, но отдельными блоками, а таблица - это один блок, его вряд ли можно разбить. Хотя, я не специалист по верстке, возможно не знаю каких то новых возможностей. Это вам скорее в гугл и на форумы верстальщиков, напрямую к КБ данная задача отношения не имеет.
в том то и дело что я тоже не знаю такого приема в верстке )
думал может сталкивались кто то с такой задачей.
я думал что может как то можно в word документ (в самом word можно разбить на 2 колонки) но я так понимаю что КБ не умеет всю таблицу выводить в word, а только лишь одну запись.
тогда вопрос по другому стоит. как это сделать хоть как нибудь? может через представление отдельное? потому что задача еще состоит в том что в таблице должны вставляться категории, подкатегории (заголовками) это прайс-лист вообще.