Помаленьку размышляю о выборе лодки для сплава, стоит ли и если да то какую.
Пока остановился на критериях выбора, - 3 местная, до 225 кг грузоподъемности, чтобы не регистрировать в ГИМС, читал что резиновые надежнее, так что резиновая. С надувным дном, и желательно мягкие сиденья, когда сплавляешься несколько часов - решает! Хоть можно и подстелить что нибудь. Так же желательно чуть заостренный и приподнятый нос, закрытый чуть чуть, чтобы туда вещи прятать. Мотор не нужен.
Читал что хвалят продукцию ярославских лодок, хотя уфимские по моему дешевле.
Посмотрев цены видим разброс от 7500 - 10 000 т.р.
7 500 - лира 21м
Лодка надувная резиновая Лира-2.
Длина, мм .............. 2500 Ширина, мм ............. 1120 Высота борта, мм ........ 320 Количество отсеков ........ 2 Масса в комплекте, кг .... 15 Грузоподъемность ........ 230 Пассажировместимость .....2
~ 9 500 Вега 2
Длина 2500 мм
Ширина 1150 мм
Диаметр борта 320 мм
Вес, кг 20 кг
Грузоподъемность 220 кг
2 деревянных сидения
Количество изолированных отсеков 2+1
Надувное дно
Пассажировместимость 2
Характеристики практически такие же. Читал что у веги большая грузоподъемность чем заявлено (~300 кг), но у лиры такие же габариты значит и подъемность та же.
Технологии только разные, у веги сварены швы, у лиры склеены. По идее сварка лучше. Но все таки 10 больше 7. Тем более что использоваться будет редко, задумался надо оно или нет. Посмотрим.
Тем более что всегда есть бюджетный вариант:
Ежели кто знает еще какие либо достойные варианты за сумму меньше 10 - прошу в каменты!
Надоела зима, надоели холода. Хочется лета.
Просматривая набор фоток с летнего сплава, захотелось выложить сюда. Позднее, надеюсь, прикручу описание самого сплава
Когда при работе с запросами в SQL или тестировании приложения вы получаете исключение SQL, то можно увидеть 2 полезных свойства, уровень ошибки (severity) и ее номер.
Посмотрев информацию о них можно предпринимать осмысленные действия. Ниже мы рассмотрим как это сделать:
Уже вторую недели стоят морозы, под тридцатник, если у моего дома это терпимо, влажность низкая, то когда идешь на работу - полный атас, понимаешь смысл выражения "морозить сопли".
Но когда стоит туман, то довольно красиво. Фотать я люблю хоть и не умею, а сегодня под рукой была моя любимая мыльница.
Из за мороза сильно торопился, поэтому было не до вдумчивого рассмотрения. Как говорится навел и снял.
В выходные посмотрел фильм Постал. Фильм режиссера Уве Болла, многие зовут его имя и фамилию слитно и без буквы в, благо повод дает.
Данный режиссер хороший претендент на звание самого худшего режиссера всех времен и народов, по крайней мере спец премию золотая малина регулярно получает.
Все таки решил посмотреть и не ошибся, комедия абсурда, абсолютный идиотизм ситуаций, больше походит на сатиру. В фильме куча всяких идей, шуток ссылок на другие фильмы, личности и события, каждая фраза и действие с чем то связано. По идее это оценят полностью только американцы но и так многое понятно.
Простейший пример, в фильме Уве Болл играет сам себя, когда на него набрасывается автор игры чтобы наказать за экранизацию, тот отвечает рукой в боксерской перчатке, в чем прикол не понял. Пока не прочитал что однажды Боллу надоели нападки критиков, он выбрал пять самых злобных и вызвал их на ринг, где поколотил. Однажды 4 подряд. Ролики есть на ютубе, прикольно.
Слово Постал от выражения - Going Postal, что означает свихнуться. Произошло от почтальонов которые взбесившись брали оружие и стреляли по клиентам. За год 20 человек и 40 трупов в америке, год не помню. В общем будьте благоразумны при выяснении отношений.: )
У главного героя куча предпосылок чтобы сойти с катушек, жена превратившаяся в чудовище не столько физически сколько морально, житье в паршивом трейлере, отсутствие денег и прочего. Главное же - ненавистный город с ироническим названием Рай.
А дальше начинается густой замес с арабскими террористами, секстантами жаждущими конца света, цитата - "человек поверит во что угодно, главное повторить нужное количество раз.", сбрендившими полицейскими и прочим.
Причем все это не прокатило бы, будучи поданным серъезно, поэтому сознательно показывается что все это стеб и абсурд. Поэтому пламенная речь героя в конце заканчивается вполне ожидаемо.
Фильм по моему действительно смешной если относится к нему как к стебу, если вам не пугают застреленные младенцы, нацисты, мат, обезьянки насильники и карлики извращенцы : ) (это все не так страшно как пишется, хотя поначалу и корежит)
Так же остроты прибавило то что смотрел в переводе Дмитрия Пучкова, ака Гоблин.
На мой взгляд подобные фильмы озвучиваются им лучше всего, голос ехидный очень бывает. Плюс живой и ясный перевод.
В общем фильм на любителя но мне понравился.
В заключение подборка кадров, любителям кошек не смотреть!! картинки взяты с www.kinopoisk.ru
Возникла ситуация, - понадобилось работать с файлами автоматом без коммандной строки. Нужно удалить все файлы с расширением .xls из определенной папки.
Сама возможность есть, используем Scripting.FileSystemObject, вопрос был как сделать из этого что то типа батника. Оказалось что достаточно файл с js кодом запустить из проводника. Но нужно быть внимательным, в корзину эти файлы не попадут.
Данный код удаляет все файлы с расширением .xls из папки c:\org, файлы в подпапках не рассматриваются. Удаляются даже файлы на чтение.
try
{
var dirpath = "c:\\org";
var ext = ".xls";
var fso, f, f1, fc, s;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFolder(dirpath);
fc = new Enumerator(f.files);
var count = 0;
for (; !fc.atEnd(); fc.moveNext())
{
//debugger;
if( ext === fc.item().name.substr(fc.item().name.length-4,4))
{
//удаляем и файлы только для чтения
fc.item().Delete(true);
count++;
};
}
WScript.Echo(count + " файлов удалено");
}
catch(e)
{
WScript.Echo("Возникла ошибка!"+e.toString());
}
Подробное описание всех возможностей смотрим здесь:
Оччень оччень не люблю тупить. Когда простейшую задачу не можешь сделать из за отсутствия примеров или каких либо левых ошибок.
Вот таким вот образом тупил полтора дня с задачей поиска и замены текста в документе с помощью jscript.
Погуглив и нашел пример на vbscript, тот нифига не работал. Долго долго искал примеры и подбирал параметры для метода Find.Execute, сообразил что надо посмотреть в инспекторе объектов в Visual Studio, там было примерно это
bool Execute(ref object FindText, ref object MatchCase, ref object MatchWholeWord, ref object MatchWildcards, ref object MatchSoundsLike, ref object MatchAllWordForms, ref object Forward, ref object Wrap, ref object Format, ref object ReplaceWith, ref object Replace, ref object MatchKashida, ref object MatchDiacritics, ref object MatchAlefHamza, ref object MatchControl)
Member of Microsoft.Office.Interop.Word
Застопорился на задаче выгрузки в Word.
Дано - шаблон документа в Word, нужно реализовать выгрузку туда как полей данных (например дата договора), так и табличных данных (например в приложении списка предлагаемых продуктов).
Нужно реализовать 2 способа, через jsscript и через asp.net, каждый для своих целей.
C jsscript повозился немного решил что вроде почти готово, надо делать на asp.net/
Сама реализация такая, делаем запрос к базе данных, возвращаем несколько наборов (один или больше). Первый это поля документа, остальные это табличные данные.
Страница асп нета показывает список доступных шаблонов (отчетов), при выборе определенного определяет данные которые надо показать, открывает шаблон пишет их туда и потом отправляет файл пользователю.
С данными разобрался быстро, по выгрузке в документ решил что поля данных надо вставлять как теги <#имя_поля#>, далее из текста документа вычленить все эти теги используя свойство текст документа и регулярные выражения.
С таблицами сложнее, самое лучшее что придумал это забить их заголовки заранее в шаблон, и в каждую таблицу вставить закладку. У закладки есть свойство Range, а оно содержит таблицы в которые он входит.
Как оказалось с таблицами как раз проблем никаких. А вот с заменой полей на данные фигня какая то. При попытке использовать стандартный метод Word.Find.Execute выдает COMException.
типа вот такое вылазит:
Exception Details: System.Runtime.InteropServices.COMException: Интерфейс не зарегистрирован (Exception from HRESULT: 0x80040155)
Сам код приведший к ошибке:
Word.Find fnd = WordDoc.Content.Find;
Сколько не искал ничего не нашел нужно. Вот так в недоумении сижу и ковыряю вокруг около.
Смысл поста, класс можно определить соотношением количества времени сидения с бубном к количеству времени потраченного на код. Пока класс хреновый похоже.
Подводить итоги легко когда есть чем хвалиться, и совершенно не хочется это делать когда все наоборот. Тем не менее это полезно.
По итогам месяца бросил диету, не ходил 2 недели в спортзал, на работе тоже как то все вяло. План прочитать книжку по асп нету тоже пошел далеко погулять.
Задача сего поста почувствовать всю глубину своей вины, и мотивировать на более успешный заход на ноябрь. То что расп***л в октябре уже ощутил, теперь по планам на ноябрь:
С диетой тормозим до февраля, зимой все равно организм жир набирает, трудно противиться. В то же время опять нужно ограничить по питанию, хоть и в мягком режиме - меньше сладкого, без хлеба.
Спортзал - перейти на 5 повторений, наращивать силу. Но после каждой тренировки либо пробежка, либо степпер, либо 7 минут на скакалке (7 подходов по минуте)
Обучение - Общее: Дочитать уже Базовый курс по асп нету и дойти до середины расширенного. Пройти лекцию по c# 2.0 на интуите. Ибо язык забыл че то. Конкретное: освоить работу с ворд и ексель через jscript и с#.
Ну и вообще как то энергичнее надо : )
Недавно писал пост, как выкинуть текст в ворд из xml файла в шаблон документа.
Но есть проблема с таблицами, нашел в сети пример и настроил его для своих нужд.
Очень часто встречается ситуация, когда необходимо фильтровать лукапы - всплывающие окошки с данными из какого то справочника. Особенно когда они связаны друг на друге.
Например у вас есть справочник отраслей, а для каждой отрасли завязаны свои виды деятельности.
Соотвественно при выборе отрасли в карточке контрагента, вам в последующем надо выбирать только те деятельности которые к ней относятся.
Что же нужно?
1. Создать фильтр и параметр по нужному полю в запросе для нижнего справочника (вид деятельности)
2. Обработать событие вызова лукапа, суть в том чтобы применить функцию ApplyDataset, описаную в скрипте по работе с данными, она просто включает фильтр в запросе, и подставляет переданное вами значение в параметр
3. Обработать события смены значения поле вышестоящего справочника (отрасли). Если отрасль изменилась то нужно сбросить на ноль вид деятельности. Если отрасль == null, то нужно заблокировать поле вид деятельности, чтобы его нельзя было видеть. Лучше эту проверку выделить в отдельную функцию (3b)
4. При загрузке формы вызывать функцию проверки отрасли (3b), для блокировки поля вид деятельности.
Ниже пример, выдержка из скрипта с 3 справочниками - лишнее удалил чтобы яснее было
В прошлый раз мы написали функцию вывода числа прописью,
теперь добавим вывод в рублях и копейках
Для применения вызываем NumberToRUR
разделитель дробной части - запятая
забыл подменить переменной, поэтому менять уже неохота...
//рубли и копейки прописью
function NumberToRUR(number)
{
var str = new String(number);
if (str.indexOf(',') == -1)
{
str = new String(str+",00");
}
if(str.indexOf(',') < 2)
str = new String("00"+str);
if(str.length - str.indexOf(',') < 3)
{
str += "0";
}
var num1str = NumberInWords(str.substr(0,str.indexOf(',')+1)) +" "+ ShowRUR(str.substr(str.indexOf(',')-2,2),0);
var num2str = str.substr(str.indexOf(',')+1,2)+" "+ShowRUR(str.substr(str.indexOf(',')+1,2),1);
// alert(num1str + " " + num2str);
return num1str + " " + num2str;
}
//склоняем рубли и копейки в зависимости от последних двух цыфр
function ShowRUR(number,level)
{
var RUR = [["рублей","рубль","рубля","рубля","рубля","рублей","рублей","рублей","рублей","рублей"],
["копеек","копейка","копейки","копейки","копейки","копеек","копеек","копеек","копеек","копеек"]
];
var str = new String(number);
if(str.length > 1)
{
if(str.charAt(0) != "1")
{
return RUR[level][parseInt(str.charAt(1)) ];
}
}
//если нет цифр или 11 рублей и тд
return RUR[level][0];
}
Что день грядущий нам готовит? Когда думаешь что знаешь, часто ошибаешься.
Сравнительно недавно пришлось изучать Terrasoft CRM.
А совсем недавно пришлось изучать как его настраивать.
Здесь будет что то типа основ, которые изучил. азбука. Пост буду редактировать постоянно, надеюсь.
Если вкратце то схема такая, само приложение написано на дельфи насколько знаю. Работа с формами же ведется через скрипты. Jsscript.
Приступим.
Необходимые знания
область и объем, что нужно знать для уверенного ознакомления с возможностями настройки
Jsscript - только синтаксис, особых функций знать не нужно. Как объявлять переменные, функции и только.
Com объекты - знать название и методы.
Sql - в принципе можно вообще не знать. Есть построитель sql запросов. Запомните про лефт джойн и все.
Форум сайта террасофт
Блоги сайта террасофт
Документация по jsscript
Открываем приложение террасофт администратор. Там хранится репозитарий всех объектов системы. Датасеты, формы, запросы, отчеты и все остальное. Там же мы можем разрабатывать какие то свои объекты – в террасофт они называются сервисы.
Репозитарий состоит из модулей, а модули содержат дерево групп. Элементы групп – сервисы. Свой модуль лучше не создавать – потребуется лицензия. Просто создайте группу – Custom например а в ней подгруппы по названиям ваших экспериментов – шалостей.
Все объекты в террасофте таблицы, датасеты, формы, запросы, отчеты это типа сервисы. У сервиса есть код – usi, имя латинскими буквами, оно должно быть уникальным. Поэтому мы можем создать новый экземпляр сервиса просто указав его имя
var Dataset = Services.GetNewItemByUSI('ds_ContactType'); //создали дата сет тип клиента, данными он заполняется автоматом из запроса привязанного к нему и с учетом включенных фильтров запроса
Вообще как понял DataSet в Terrasoft CRM что то типа курсора.
Сначала нужно создать объект датасета, потом проверить не пуст ли он. Далее мы можем двигать назад вперед мелкими шажками. moveNext, movePrev.
Если шагов много значит плохой запрос – не фильтруем данные.
Для фильтрации применяется функция ApplyDataSetFilter, где указывается название фильтра. Фильтр создается заранее, в Sql запросе заполняеющем дата сет. У фильтра есть имя, и он заранее выключается, если его нужно включать по желанию.
Если нашли запись то к полю можно обращаться через DataField,
var DataField1 = Dataset.DataFields('Name')
var M = DataField1.Value;
но, если мы хотим редактировать запись то сначала ее нужно открыть для редактирования, метод Edit
Если же мы добавляем запись то этого делать не нужно.
Сохраняем запись методом Post
Обходим весь датасет
while (!Dataset.IsEOF) {
Dataset.Edit();
Dataset.Values('Name') = 'some new value';
Dataset.Post();
Dataset.GotoNext();
}
Dataset.Close();
Еще есть поиск
Dataset.Locate(FieldName, FieldValue)
Dataset.Locate('Name', 'Вася')
Подозреваю что он повторяет предыдущий код, поэтому использовать осторожно… Лучше создать новый датасет с фильтром, чтобы
Решил подытожить что же вышло из кампании борьбы с жирром.
Оказалась что не было ни нормального плана, ни желания его реализовать. Все свелось к отказу от хлеба и конфет а также к периодическим пробежкам.
Выглядело это так, легкой трусцой на беговой дорожке со скоростью пешехода бегу 100 метров, через некоторое время легкая походка превращается к топанье слона, к окончанию пробежки - первому километру уже висел на поручнях изредка касаясь ногами дорожки, стиль летящий эльф.
Естественно что такой режим укрепляет сердечко, но жир не сжигает, чтобы сжигать жир нужно выбрать темп около 120 ударов в минуту, или тот в котором можете не задыхаясь говорить несколько слов.
Сухими цифрами, за прошедший период было проведено 8 тренировок с отягощениями. Тренировки пытался сделать в стиле не меньше 10 повторений, мало того что веса оказывется смешные которые могу поднять 10 раз так еще и не чувствуется что поработал, толку от таких тренировок мало, вернулся к 5 повторениям.
Беговых "проелебежек" вышло 6 штук. По крайней мере не умираю теперь когда залажу на 4 этаж на работу и то польза. Вообще же чувствуется нехорошая нагрузка на голеностоп - вес центнер.., наверно надо вместо пробежек либо искать лестницу либо ходить на степпере - тренажер имитатор лестницы.
Самые большие разочарования вызвала диета, точнее ее несоблюдение. Калории не считал, углеводы ел.
Несмотря на все это скинул 1.5 кг и сантиметра 3-4 в талии, плюс по ощущениям полегче, думаю из за кардио упражнений. Смог пробежать 3 км на дорожке за 18 минут (в институте бегал за 12.10 это четверка была)
Все бы хорошо, но весело проведенные выходные (прошлые и позапрошлые (были причины)), с радостью вернули мне и вес и объем.
Что же решил?
Подумал что хотя бы неделю посижу на малоуглеводке. Т.е. реально ограничить углеводы, если не выйдет то забить на диету, ограничивать количество пищи, употреблять кефир (молочные продукты уменьшают чувство голода), клетчатку в виде отрубей, выкладываться на тренировках. Ну и пиву нет..
В принципе и не ждал чуда, лишний вес копим годами, за месяц не избавишься. Просто немного приуныл. Все таки осень сказывается.
В общем начинаем новый этап кампании... Главное не отчаиваться чего и вам желаю :)
Намечается проект по внедрению CRM системы. Участвовать придется в качестве консультанта аналитика и настройщика \ разработчика. В общем в каждой бочке…
Собственно возникает куча вопросов, в основном “Как внедрять”.
В поисках ответа перелопачиваю Интернет, в результате каша в голове. Очень много разных подходов. Щас смотрю госты (ГОСТ 34.601-90, 34.602-89), читаю, есть много полезного. Но больше по созданию систем – разработке новой.
В моем случае, ситуация “облегчается” тем что есть готовая система, можно просто составить список ее модулей и по ним создать тз. Типа как настроить модуль Контрагенты, маркетинговые кампании и т.д. и т.п. В таком случае можно не париться насчет анализа. Который должны проводить бизнес аналитики а не компутерщики.
В общем, хочу навести порядок в голове и ответить для себя на такие вопросы
Какие стадии проекта будут?
Какие документы будут созданы для согласования с клиентом?
Какие виды документов вообще будут использоваться?
Как составить список требований клиента?
Как составить концепцию проекта?
Как составить проектное задание – технический проект?
Как составить план работ?
Как составить план тестирования?
Как составить план ввода в эксплуатацию?
Самый важный вопрос – как составить все документы так чтобы можно было однозначно определить момент завершения работ по проекту, по факту, а не по эмоциям клиента?Те ответы что найду – напишу здесь.
Cистема для внедрения - Terrasoft CRM.
На картинке снизу - командная работа
На выходных посмотрел фильм Смертельная гонка. Делюсь впечатлениями..
Недалекое будущее. Сбылась мечта всех американофобов – США в глубочайшем экономическом кризисе. Ипотека до добра не доведет… Когда есть не на что, часто приходится идти на преступление. Тюрьмы переполнены. Тут было бы неплохо применить опыт старших товарищей – из фильма Новая земля. Посадить всех на баржу и либо утопить, либо увезти в северный ледовитый океан.
Но как говорится мы пойдем другим путем. Прогресс не стоит на месте, интернет и реалити шоу (дурдом 2 и им подобные) давно уже стали коммерческими проектами. Начальница тюрьмы острова Терминал, женщина с лицом улыбающейся гадюки, задумал цинично заработать денег на заключенных.
Она устраивает гонки на машинах с мощными моторами, с таким количеством брони, что хватило бы на крейсер Аврору, и с количеством оружия которого хватило бы на пять машин Джеймса Бонда. Делается это все опять же руками заключенных, соответственно стоит копейки. В гонках участвуют те из зеков, которые хорошо умеют водить машину, лучше бывшие гонщики. Чтобы не было скучно на трассе полно пакостных ловушек, которые с доброй улыбкой на лице запускает все та же начальница тюрьмы. До финиша в живых остается меньше половины гонщиков. Цель одна – поднять рейтинг трансляции гонок, идущей через Интернет. Вот он – технический прогресс!!!
Зачем это заключенным? Есть легенда что “избранный”, выигравший 4 гонки подряд станет свободным… Как этому верят воры, грабители, насильники и убийцы – понимать отказываюсь. Тем более что даже нет рекламных роликов с бывшими чемпионами (смотрим фильм Бегущий человек)
Главный герой Дженсен Эймс (Стэтхэм), в прошлом знаменитый гонщик, теперь перебивается на черновых работах.
Фильм начинается с того что сокращают всех работников сталелитейного завода где он работает. Ничего себе неделька начинается...
Дальше семейная трагедия. Он оказывается в тюрьме. К нему с предложением приходит начальница тюрьмы. Он должен заменить ее бывшего лучшего гладиатора гонщика – Франкенштейна, парня в железной маске, безвременно скончавшегося перед 4 победой…
Подумав Эймс соглашается. Но погибать ему никак нельзя, на свободе маленькая дочь которую отдали на приемным родителям..
В напарницы он получает очаровательную латиноамериканку, и начинается…
Джеймсу Стэтхему классно удаются роли суровых мужиков ( Перевозчик 1,2. Адреналин, Mean Machine и прочие прочие прочие) Харизма у него такая. Не подвел и в этот раз, когда такой мужик начинает всех мочить, поневоле радуешься что он на стороне Добра…
Приятно разбавляет его харизму прекрасная спутница.
В пятницу ходил в спортзал, взвешивался на весах.
В общем за 2 недели эксперимента результатов по весам не видно...Единственно, талию "уменьшил" на 3 см, но думаю это от упражнений на пресс - просто втянул живот.
Стал думать в чем причина, очевидно в том что не соблюдаю свои же правила.
Диета - ну пиво не пью, сладкое не ем - то что с сахаром, да конфеты, фрукты ем, бывает. Есть стал поменьше. Но приходилось и рис есть и картошку и макароны, в общем "углеводного голодания" не вышло. Плюс ни о каком подсчете калорий речи и не шло, так что неизвестно больше потребляю или трачу.
Тренажерка - стал делать на количество повторений, весам писец : ) Еле еле 4 сетов по 12 повторений с 70 кг. Ногам в принципе все равно, они дюжат. Становая тоже упала. Но самое главное не ощущения проработки, и мышцы не отрабатывают, чувствуется. Хотя делаешь пока можешь. За 2 недели было 5 тренировок.
Бег. - бегал 2 раза к моменту пятницы. минут по 7-10. У меня трасса междугородняя рядом с домом, она идет вниз - подуклон, пока вниз бежал было хорошо. А вот когда обратно то не очень хорошо..
Исходя из всего, решил использовать немножко другой подход, испробовал 2 раза - в пятницу и вчера. Пока нравится. В тренажерке делаем только базу. Повторений стараться все таки 10-12. По окончанию тренировки медленнный эстонский бег в течении 15 минут на беговой дорожке. Пока даже этого хватает чтобы дышать как рыба на берегу. В дальнейшем увеличивать скорость а не длительность. Что будет через две недели - увидим.
В общем нелегкое это дело худеть. Если не худеть. : )
Вчера посмотрел фильм Мираж режиссера Тиграна Кеосаяна, по сюжету три девушки едут работать жрицами любви.