Только никак не могу выбрать среду разработки. Использовать ли Дельфи,
на котором у меня есть какой никакой опыт или же приступить к созданию
приложения вместе с изучением VS 2008.
--
Subscription settings: http://groups.google.com/group/itpotcast/subscribe?hl=en
обучаюсь программированию. хочу сделать приложение-будильник, для
напоминания сотрудникам нашей организации за какие дни надо загрузить
отчеты на сервер. При этом программа должна отслеживать за какие дни
загрузка отчетов не производилась и просить пользователя отправить их.
Прога может и не очень серьезная, но интересно было бы осуществить
идею. Буду признателен за советы.
И по мере продвижения буду выкладывать все, что получилось на суд
обществу.
Только никак не могу выбрать среду разработки. Использовать ли Дельфи,
на котором у меня есть какой никакой опыт или же приступить к созданию
приложения вместе с изучением VS 2008
В данный момент заказчик - это я. Поэтому сроки не ограничены. Но
конечно затягивать с решением тоже не собираюсь. На начальном этапе
есть проблема типа приложения, то есть что нужно создать: простое
*.ехе приложение и добавить его в автозагрузку как процесс или же
создавать службу. Честно говоря, понятия о службах очень мало. Но для
начала не хочется заморачиваться на малознакомых функциях и начать все
с привычных алгоритмов.
С помощью MessageBox со стандартными кнопками ОК и Отмена.
Есть несколько, но я с ними вообще не знаком.
Не совсем так. Интернета на наших точках нет. Соединение устанавливается посредством обычного модема через телефонную линию со скоростью ~24Кбит/сек. Предполагается, что приложение будет установлено в каждом компьютере. Например в 10:00 часов должно выводиться сообщение каждое утро с информацией о еще не отправленных отчетах. Для этого, видимо, требуется система слежения. Как это реализовывать пока понятия не имею.
20.04.10, Вадим Глебов<vgl...@gmail.com> написал(а):
> --
> Subscription settings:
> http://groups.google.com/group/itpotcast/subscribe?hl=en
>
--
Отправлено с моего мобильного устройства
а что если соединение одностороннее? То есть Сервер только принимает
входящие звонки от точек, для получения от них отчетов. Иначе говоря,
сервер открыт для подключений, но не может подключаться к точкам.
>
> Если же речь идет о том, чтобы напомнить пользователю установить соединение,
> то тогда нужно выдать пользователю будильник, а вариантов уже созданных
> будильников, оповещателей, автодозванивалок по расписанию в сети
> предостаточно. Какая операционная система у пользователя?
кроме будильника необходима функция, которая сообщала бы за какие
числа надо загрузить отчеты.
>
> (в дальнейшем планируется автоматизация отправки отчетов без участия
>
> > сотрудника. а пока только оповещение.)
>
> Если устанавливается соединение, то явно для информационного обмена, аа что если соединение одностороннее? То есть Сервер только принимает
> информационный обмен подразумевает обмен сообщениями, значит по
> установленному соединению сервер может отправить информационное
> сообщение-напоминание пользователю. Какими сообщениями производится обмен?
входящие звонки от точек, для получения от них отчетов. Иначе говоря,
сервер открыт для подключений, но не может подключаться к точкам.
>кроме будильника необходима функция, которая сообщала бы за какие
> Если же речь идет о том, чтобы напомнить пользователю установить соединение,
> то тогда нужно выдать пользователю будильник, а вариантов уже созданных
> будильников, оповещателей, автодозванивалок по расписанию в сети
> предостаточно. Какая операционная система у пользователя?
числа надо загрузить отчеты.
Но тут есть некоторые уникальные, я считаю, функции по определению дат отчетов к отправлению. Или такие программы тоже уже существуют?
Дело в том, что оповещение должно происходить до сеанса обмена. я
думал, что создам какой-то счетчик не отправленных отчетов на клиенте.
Однако ваш вариант неплохо подходит для решения этой задачи.
> Клиентское приложение во время сеанса обмена может получить на сервере отчетДело в том, что оповещение должно происходить до сеанса обмена. я
> о недостающих отчетах и отобразить пользователю.
думал, что создам какой-то счетчик не отправленных отчетов на клиенте.
21.04.10, Вадим Глебов<vgl...@gmail.com> написал(а):
--
Возможно ли реализовать это независимо от приложения, если коды недоступны?
22.04.10, Вадим Глебов<vgl...@gmail.com> написал(а):
Каждое утро наш сотрудник обязан передавать отчеты о проведенных
операциях за день на сервер. Для этого он осуществляет дозвон и
устанавливает модемное соединение. Но поскольку некоторые из наших
работников забывчивы, мне хотелось сделать приложение напоминалку,
которое должно напоминать работнику загрузить отчеты за все
пропущенные дни. А это нужно выполнить еще до соединения.
И еще один важный момент - мне недоступны коды рабочего приложения,
потому что я в этой фирме сижу как сисадмин и видимо это вне моей
компетенции. Поэтому я пытаюсь разработать приложение независимо
отслеживающее изменения и информирующее о недостающих отчетах.
On 23 апр, 12:09, Нурбек Карагулов <nurbek.k...@gmail.com> wrote:
> Понимаете, подключение производится вручную нашим сотрудником.
> Поэтому, хотелось сделать напоминание на клиенте без установления
> связи.
>
> 22.04.10, Вадим Глебов<vgle...@gmail.com> написал(а):
>
> > 2010/4/22 Нурбек Карагулов <nurbek.k...@gmail.com>
Позвольте объяснить ситуацию, подробнее.
Каждое утро наш сотрудник обязан передавать отчеты о проведенных
операциях за день на сервер. Для этого он осуществляет дозвон и
устанавливает модемное соединение.
Но поскольку некоторые из наших
работников забывчивы, мне хотелось сделать приложение напоминалку,
которое должно напоминать работнику загрузить отчеты за все
пропущенные дни. А это нужно выполнить еще до соединения.
И еще один важный момент - мне недоступны коды рабочего приложения,
потому что я в этой фирме сижу как сисадмин и видимо это вне моей
компетенции. Поэтому я пытаюсь разработать приложение независимо
отслеживающее изменения и информирующее о недостающих отчетах.
>
> Локальное зеркало сервера запущено в фоновом режиме, обнаруживает наличие
> связи до сервера и запрашивает информацию об отправленных отчетах
> пользователя указанного в настройках.
>
> Сервер подключается к БД системы отчетов и получает из нее информацию об
> отправленных отчетах. На запрос зеркала или ремайндера (интерфейсы зеркала и
> сервера идентичны) выдает информацию об отправленных отчетах указанного в
> запросе пользователя.
в вопросе создания Сервера, честно, говоря я не шарю. никогда не
приходилось еще заниматься этим.
Может быть дадите совет, что можно почитать, чтобы обрести хоть какое-
то представление о Серверных приложениях.
>в вопросе создания Сервера, честно, говоря я не шарю. никогда не
> Локальное зеркало сервера запущено в фоновом режиме, обнаруживает наличие
> связи до сервера и запрашивает информацию об отправленных отчетах
> пользователя указанного в настройках.
>
> Сервер подключается к БД системы отчетов и получает из нее информацию об
> отправленных отчетах. На запрос зеркала или ремайндера (интерфейсы зеркала и
> сервера идентичны) выдает информацию об отправленных отчетах указанного в
> запросе пользователя.
приходилось еще заниматься этим.
Может быть дадите совет, что можно почитать, чтобы обрести хоть какое-
то представление о Серверных приложениях.
Начинать нужно с начала, и разрабатывать сверху вниз.
В первой реализации предлагаю использовать встроенный в WINDOWS функционал запуска задач по расписанию. http://support.microsoft.com/kb/308569/ru
На первом этапе я бы выполнил задачи:
* ремайндер будет отображать напоминание о том что нужно отправить отчет и только.
* средствами мастера назначенных заданий настроить запуск ремайндера по расписанию
* создать инсталлятор, который установит ремайндер и назначит его запуск по расписанию.
* создать деинсталятор
извините, что нужно для создания инсталлятора? я думал, что буду делать все это вручную
Напомни, какую среду разработки ты планируешь использовать?
procedure TForm1.FormCreate(Sender: TObject);
var
CurrentDay: String;
Dt: TDateTime;
begin
Dt := Now;
CurrentDay:= FormatDateTime('dd-mmmm-yyyy', Dt-1);
Label1.Caption:='Загрузите отчет за ' + CurrentDay;
end;
Начинать нужно с начала, и разрабатывать сверху вниз.извините, что нужно для создания инсталлятора? я думал, что буду делать все это вручную
В первой реализации предлагаю использовать встроенный в WINDOWS функционал запуска задач по расписанию. http://support.microsoft.com/kb/308569/ru
На первом этапе я бы выполнил задачи:
* ремайндер будет отображать напоминание о том что нужно отправить отчет и только.
* средствами мастера назначенных заданий настроить запуск ремайндера по расписанию
* создать инсталлятор, который установит ремайндер и назначит его запуск по расписанию.
* создать деинсталятор
Напомни, какую среду разработки ты планируешь использовать?собираюсь использовать Delphi 7
Значит найди статьи как на Delphi 7 создать веб-приложение для IIS, а точнее web service.
Значит найди статьи как на Delphi 7 создать веб-приложение для IIS, а точнее web service.
что-то я не могу найти никаких статей о создании таких приложений в Дельфи 7 для IIS. Но в Дельфи есть средства для создания веб-сервисов. Поможет ли это мне? Или IIS не примет эту программу?
Нет, Гугл че-то не может. Я проверял.
там говорится про какой-то SOAP server application. стоит ли начинать с него? В с этим знакомы?
Привет Нурбек,Спасибо, что сообщил о своих успехах, всегда приятно, когда удается сделать что-то полезное. Кроме установки модемного соединения нужно еще настроить протокол TCP/IP, это делается двумя основными способами:1. статическая настройка2. DHCPВ первом случае нужно задать значения параметров протокола TCP/IP
08.06.10, Нурбек Карагулов<nurbe...@gmail.com> написал(а):
--
Отправлено с моего мобильного устройства
С наилучшими пожеланиями!
Нурбек
Ремонт кабеля не помог. В чем причина неизвестно. Если кто-то с этим
сталкивался, помогите разобраться в чем дело, пожалуйста.
у меня две проблемы:
- как в папке вычислить самый последний загруженный файл с одинаковым расширением;
- и каким образом из текста из этого файла выделить необходимый фрагмент, то есть есть строка длиной 99 символов(и в разных файлах количество это может изменяться, в зависимости от получаемых данных), из этого текста нужно выделить текст даты для вычислений.
у меня две проблемы:- как в папке вычислить самый последний загруженный файл с одинаковым расширением;
Получи файлы в виде списка, отсортируй по дате создания в обратном порядке, первым элементом списка окажется последний загруженный файл.
Спасибо, с регулярными выражениями я разобрался.
Теперь насчет имен файлов.
у меня две проблемы:- как в папке вычислить самый последний загруженный файл с одинаковым расширением;
Получи файлы в виде списка, отсортируй по дате создания в обратном порядке, первым элементом списка окажется загруженный файл.
А что если взять название файла как элемент для вычислений. Дело в том, что оно состоит из текста+день-месяц+текст. Проблема в том, что при копировании дата создания файла меняется. И так из папки в папку дата может меняться.
Получилось! Программа делает именно то, что нужно: смотрит в папку и выбирает последний файл по названию.
Появилась проблемка. Если программа запустится до установления связи с сервером, то она может выдавать сообщение об ошибке. Как добиться того, чтобы программа была запущена и ожидала бы сигнала от серверного приложения и после соединения выдавала сообщение о еще не загруженных отчетах?
Что-то программулька моя перестала работать. Что прога, что прототип. Обе не работают по сети. Не могут найти *.xml-файл. Никак не пойму что делать с ними.
А мне осталось еще решить проблему с коммутируемым доступом. БГТС вообще шевелиться не хочет =)
On Jun 30, 1:20 am, Нурбек Карагулов <nurbek.k...@gmail.com> wrote:
> 29 июня 2010 г. 8:59 пользователь Вадим Глебов <vgle...@gmail.com> написал:
>
>
>
> > 2010/6/28 Нурбек Карагулов <nurbek.k...@gmail.com>
В моей практике был пока только один случай, когда вопросы с БГТС решались в считанные часы/дни, секрет был прост, контора была крупная, могла себе позволить нанять очень опытного и толкового инженера, который полжизни проработал в БГТС и имел связи на техническом уровне на всех центральных станциях. В конторе он отвечал за качество связи, чинил провода, программировал АТС, но самое ценное, то что он реально быстро решал вопросы на стороне БГТС.
--
С наилучшими пожеланиями!
Нурбек
Молодец, теперь почитай это и сделай правильные выводы.
http://habrahabr.ru/blogs/arbeit/96965/

Пусть программы выдает корректное сообщение об ошибке "не удалось установить соединение с сервером, повторите отправку позже", пользователю нужно объяснить как вести себя при получении данного сообщения. Это простая реализация позволит запустить систему в эксплуатацию и проверить есть ли проблема на самом деле. Возможно есть другие более важные проблемы, которые ты не как разработчик не заметил, пользователи начав эксплуатировать систему расскажут тебе, что их не устраивает.
Пусть программы выдает корректное сообщение об ошибке "не удалось установить соединение с сервером, повторите отправку позже", пользователю нужно объяснить как вести себя при получении данного сообщения. Это простая реализация позволит запустить систему в эксплуатацию и проверить есть ли проблема на самом деле. Возможно есть другие более важные проблемы, которые ты не как разработчик не заметил, пользователи начав эксплуатировать систему расскажут тебе, что их не устраивает.
Вот тут мне не хотелось бы, чтоб пользователь как-то взаимодействовал с прогой. Ведь множество юзеров ленивы и им проще позвонить мне и спросить. Для них эта разработка даже и не нужна почти. Цель же моя - автономная программа. Попробую найти способ, который позволит следить за событиями в системе и позволит запускать программу сразу после установления модемного соединения.
С ним можно как-нибудь связаться? Или сколько могут стоить его услуги - хотелось бы знать для предоставления информации начальству и оценку наших возможностей.
Молодец, теперь почитай это и сделай правильные выводы.
http://habrahabr.ru/blogs/arbeit/96965/
Модемную связь мы наладили. БГТС таки уступил после письма, отписанного к Техническому Директору БГТС. Сегодня эта проблема разрешилась.
У меня появилась возможность протестировать мою прогу. Результаты не внушили оптимизма. Программа ошибок не выдает, нормально запускается, НО не дает дату, за которую надо загрузить отчет. Через браузер я проверил: веб-узел открывается. Путь к интерфейсу тоже доступен. В чем же дело?
Как правило в мелочах, проверь правильность URL, убедись, что URL который открывается в браузере используется в твоем клиенте, выводи отладочное сообщение в лог или на экран, обязательно обрамленный в стопсимволы, чтобы увидеть пробельные символы в начале и конце строки. И ответь на вопрос все ли в порядке у тебя с URL?
P.S. Еще раз спасибо Вадиму за направление и помощь. А впереди есть
планы реализации этой же программы на C# и Java.