Здравствуйте в Активностях у нас есть новое поле с типом ДАТА. Менеджеры привыкли не вносить дату, а копировать с открытого источника. Вот только проблема, дата там указана в формате dd.mm.yy, а не dd.mm.yyyy. Если копировать и вставить - сайт не меняет формат на нужный. Что можете посоветовать?
Нравится
"Полищук Виталий Романович" написал:Что можете посоветовать?
Правильно заполнять дату.
Ну или сделать onChange ивент поля с датой и в функции форматировать значение (первое что приходит в голову). Плюс где-то в коде я видел пример formatter в controlConfig-е... Не могу вспомнить точно, но можно в этом направлении покопать.
Тоже у многих пользователей есть желание вводить дату быстро и просто - без разделителей, а иногда и без года...
Например, 04042017 или 0404
Но, как понимаю, это невозможно в принципе?
Добрый день, Владимир!
К сожалению, сейчас вариантов замещения данной логики нет. Единственный вариант быстро ввести дату - выбрать из маленького календаря.
Ну, или сделать строковое поле для редактирования, а дату вытягивать из него программно (на клиенте, на объекте или на триггере) и писать в другое поле типа «дата».
"Зверев Александр" написал:Ну, или сделать строковое поле для редактирования, а дату вытягивать из него программно (на клиенте, на объекте или на триггере) и писать в другое поле типа «дата».
Да, в критических местах уже сделали. Но тогда пропадает "календарик" :D
Поле с календарём тоже можно вытянуть на эту карточку и синхронизировать с текстовым в обе стороны.
"Зверев Александр" написал:Поле с календарём тоже можно вытянуть на эту карточку и синхронизировать с текстовым в обе стороны.
Брррр, как-то это не о лучшей CRM-системе :)
Всё предусмотреть невозможно. Кто-то захочет вводить дату в виде «04042017», кто-то UNIX-время, кто-то по юлианскому или другому альтернативному календарю, хоть римскими цифрами от основания Города.
Если такой механизм нужен многим, его могут реализовать в новых версиях.
Что-то вы понавыдумывали костылей, господа)
Почему не сделать свой модуль:
define("TmDateEdit", ["DateEdit"], function() { Ext.define("Terrasoft.controls.TmDateEdit", { extend: "Terrasoft.DateEdit", alternateClassName: "Terrasoft.TmDateEdit", tryParseDate: function (a, b, c) { try { debugger; return Terrasoft.parseDate(a, b, c); } catch (d) { return console.warn(d); } } }); });
Далее переопределить ViewGeneratorV2, чтобы он генерил TmDateEdit вместо DateEdit,
и тут
return Terrasoft.parseDate(a, b, c);
возвращать всё, что нам угодно и как угодно форматировать(по-умолчанию он парсит через Ext.Date.parse).
"Варфоломеев Данила" написал:Что-то вы понавыдумывали костылей, господа)
Почему не сделать свой модуль:define("TmDateEdit", ["DateEdit"], function() {
Ext.define("Terrasoft.controls.TmDateEdit", {
extend: "Terrasoft.DateEdit",
alternateClassName: "Terrasoft.TmDateEdit",
tryParseDate: function (a, b, c) {
try {
debugger;
return Terrasoft.parseDate(a, b, c);
} catch (d) {
return console.warn(d);
}
}
});
});
Далее переопределить ViewGeneratorV2, чтобы он генерил TmDateEdit вместо DateEdit,
и тут
return Terrasoft.parseDate(a, b, c);
возвращать всё, что нам угодно и как угодно форматировать(по-умолчанию он парсит через Ext.Date.parse).
Добрый день. А не могли бы Вы подсказать как переопределить ViewGeneratorV2?
"Сурмачевский Евгений Александрович" написал: А не могли бы Вы подсказать как переопределить ViewGeneratorV2?
Создать замещающую схему, родитель "Генератор представления", из ViewGeneratorV2 перекопировать все методы и ресурсы, сохранить
Владимир Соколов пишет:
Тоже у многих пользователей есть желание вводить дату быстро и просто - без разделителей, а иногда и без года... Например, 04042017 или 0404Но, как понимаю, это невозможно в принципе?
в 7.11.3 заметил, что пожелание реализовали! Круто, на самом деле!