|
|
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
1. ХП проверки на легитимность прав администратора: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Возвращается переменная m.lnreturn_parameter (по умолчанию она -1) Если в базе данных у клиента она 1 (то есть он админ) select : Код: plaintext 2 Вот полный код этого метода: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 1) Код: plaintext Код: plaintext Ok? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 00:08 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Pavel O.Спасибо Сергей за отличный материал! Попробовал реализовать web service на своей машине (на своей локальной сети) – получилось. А вот как сделать службу на другом компьютере (я имею в виду бесплатный хостинг) - не понял. Вообщем тот же вопрос, что и у пользователя nataSid. Если можно, то ответить на него как можно конкретнее. (Единственное, что я понял - это надо поменять свой localhost на адрес веб сервера.) Вы все правильно поняли. У меня это написано в FAQ пункт 4 : Для этого надо его опубликовать на живом Web Server. При публикации listener URI будет выглядеть примерно так: http://www.yourserver.ru/web_service/ все остальные замечания по поводу конфигурации виртуального директория и прав доступа остаются примерно такими - же как и для примера на Вашей локальной машине. То есть все делать как всегда, вот только имя - реального Web Site (больше никакой разницы)... Но Ваш хостинг должен быть на базе платформы Windows (Linux, Unix не поддерживает MS Web Services)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 00:13 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Hi Pavel! Уверен, что на 99% бесплатных хостингов у тебя НИЧЕГО не получиться. Ты слишком многого хочешь от халявы :) Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 01:47 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Здравствуй Сергей. Sergey ChКак видите, они сильно отличаются друг от друга Понимаете мы не поняли друг друга. Речь идет о проекте Mesckient. Вы ссылаетесь на метод Click() кнопки "Опубликовать" формы fmrAddNewMessage.scx, а я говорю о методе Click() кнопки "Сохранить" формы frmUsers.scx от 11.06.05 Там действительно одинаковый код. И ссылку я давал на именно на этот метод часть 5. 2.Метод frmUsers.command2.Click() это сохранить Вот прям сейчас переписал http://www.sergey.co.uk/WebPages/FoxProArticles/Downloads/ws_mes_client.zip посмотрел форму, Да все так как я писал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 10:05 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Чувашов ЮрийЗдравствуй Сергей. Sergey ChКак видите, они сильно отличаются друг от друга Понимаете мы не поняли друг друга. Речь идет о проекте Mesckient. Вы ссылаетесь на метод Click() кнопки "Опубликовать" формы fmrAddNewMessage.scx, а я говорю о методе Click() кнопки "Сохранить" формы frmUsers.scx от 11.06.05 Там действительно одинаковый код. И ссылку я давал на именно на этот метод часть 5. 2.Метод frmUsers.command2.Click() это сохранить Вот прям сейчас переписал http://www.sergey.co.uk/WebPages/FoxProArticles/Downloads/ws_mes_client.zip посмотрел форму, Да все так как я писал. Да, все так, как Вы пишите. Приношу свои извинения за недопонимание. Дело в том, что это учебная программа и в ней много чего нет. Обычно при добавлении и редактировании клиентов у Вас должна быть различная "бизнес логика" вот я ее и показал, но в мое конкретном случае ради упрощения она одинакова - обязательный только пароль и логин клиента (даже дополнение/изменение данных клиентов находятся в одной ХП). В данном случае код избыточный, так что смотрите сами чем это считать - недостатком автора или преимуществом более простого развития клиента в будущем. Спасибо за детальное рассмотрение кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 10:20 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Sergey ChСпасибо за детальное рассмотрение кода Это Вам спасибо за статью, где приведен интересный пример организации обмена данными на просторах инета. "Хороший код, хорошее обстоятельное обсуждение, что еще нужно." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 11:48 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Чувашов Юрий "Хороший код, хорошее обстоятельное обсуждение, что еще нужно." Что бы встретить старость? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 10:58 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Я тут немного поэкспериментировал с моим примером на инотранном хостинге. В принципе - надо переделывать программу и пример, чтобы национальные языки отображались правильно? В этом случае все символьные поля должны быть Blob и везде прийдется все преобразовывать в Base64... Надо это делать или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 11:01 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Sergey ChЯ тут немного поэкспериментировал с моим примером на инотранном хостинге. В принципе - надо переделывать программу и пример, чтобы национальные языки отображались правильно? В этом случае все символьные поля должны быть Blob и везде прийдется все преобразовывать в Base64... Надо это делать или нет? Конечно!!! Другие посмотрят, разве плохо!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 11:24 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Sergey Chнадо переделывать программу и пример, чтобы национальные языки отображались правильно? В этом случае все символьные поля должны быть Blob и везде прийдется все преобразовывать в Base64... Надо это делать или нет?А нельзя ли сохранить существующий пример, а юникоды реализовать как другую версию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 15:52 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Urri А нельзя ли сохранить существующий пример, а юникоды реализовать как другую версию? Я вот как раз об этом и думаю... Слишком много меняется - даже идеология разработки базы данных и ХП (Base64 - coding/uncoding, unicode etc)... Не слишком ли это сложно будет для начинающих? Дело в том, что FoxPro пока очeнь плохо работет с UNICODE (это возможно в 9 версии, но не просто)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 16:28 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Статью начали печатать на FoxClub... Но похоже, что наша активность летом очень низкая ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2005, 10:36 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
На всякий случай UP, а то уже стали подниматься вопросы, описанные в данном топике... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 16:42 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
а все таки через Proxy кому то удалось результат получить ? ( у меня Win xp , Isa Server 2000 + SurfControl - ПО для контроля траффика) пол-часа поэксперементировал с системщиком ( кто настраивает proxy и все дела) - мне убрали ограничения на все сайты ( SurfControl ) и протоколы (Isa Server ) ( пробовал и через firewall-клиент и когда тот disabled ) Connector:Connection time out. HRESULT=0x800A1527 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1527 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1527 - Client:Unspecified client error. HRESULT=0x800A1527 ps да когда в ИЕ запрашиваю http://www.sergey.co.uk/WebModules/NewsManaer/Headlines.asmx?WSDL то я вижу у себя XML но в просмотрщике запросов на сервере (SurfControl Real-Time Monitor ) не вижу а когда скажем ya.ru - то вижу то же самое - и на прокси сервере ps Если кому то удастся ч.з proxy напишите мне в мыло gfv1@list.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 00:07 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Hi Федор! > а все таки через Proxy кому то удалось результат получить ? Да, конечно. Код: plaintext 1. 2. 3. 4. Думаю из примера понятно, где и как указывается прокси? wsobject это собственно и есть главный объект... Вообще в FFC классе для установки таких свойств предназначен абстрактный метод SetConnectorProperties - т.е. по умолчанию он пуст, но ты можешь субклассироваться, и там уже прописать настройки. помимо указанного свойства, тебе могут понадобиться ProxyPassword и ProxyUser. в MSDN указан и ProxyPort как отдельное свойство (там правда описан Soap toolkit 2.0) , но он не работает - видимо в SOAP 3.0 что-то поменяли... Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 01:51 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Гулин Федора все таки через Proxy кому то удалось результат получить ? ( у меня Win xp , Isa Server 2000 + SurfControl - ПО для контроля траффика) пол-часа поэксперементировал с системщиком ( кто настраивает proxy и все дела) - мне убрали ограничения на все сайты ( SurfControl ) и протоколы (Isa Server ) ( пробовал и через firewall-клиент и когда тот disabled ) Connector:Connection time out. HRESULT=0x800A1527 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1527 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1527 - Client:Unspecified client error. HRESULT=0x800A1527 ps да когда в ИЕ запрашиваю http://www.sergey.co.uk/WebModules/NewsManaer/Headlines.asmx?WSDL то я вижу у себя XML но в просмотрщике запросов на сервере (SurfControl Real-Time Monitor ) не вижу а когда скажем ya.ru - то вижу то же самое - и на прокси сервере ps Если кому то удастся ч.з proxy напишите мне в мыло gfv1@list.ru Ничего не понимаю, так как у меня работало все с ISA Server 2000, Сейчас стоит ISA 2004... Проблема была в том, чтобы установить на клиенте полноценного клиента ISA Server... Причем они от каждой версии разные и не совместимы друг с другом... А Service Packs у Вас на ISA 2000 стоят? Да, и что за ПО контроля трафика? Оно случаем ничего не режет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 09:25 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
to Игорь СПАСИБО o.ConnectorProperty("ProxyServer") = '172.30.1.6:8080' && можно и так 'ISASURF:8080' !!! и все заработало на любом клиенте ps через firewall у меня начались проблемы с Radmin - когда он включен не могу достучаться до 2 нужных мне ПК (хотя они пингуются) to Сергей И Игорь и All >>: все символьные поля имеют тип Memo. Это связано с тем, что в ASP.NET WS надо как и в SOAP указывать обязательность передачи схемы данных внутри XML файла. Нами этого не было сделано, и FoxPro по умолчанию поставил для строковой переменной максимально возможную длину. Решить эту проблему можно двумя путями: попросить разработчиков Web Servise включать схему в XML файл Я тут попробовал потестить функции www.cbr.ru 1? Я так понимаю что схемы тут нет ? те если размер полей меняется - то мне надо будет на клиенте (VFP) менять prg 2? Простые примеры работают : o=CREATEOBJECT("MSSoap.SoapClient30") o.MSSoapInit("http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL") o.ConnectorProperty("ProxyServer") = '172.30.1.6:8080' && , 'ISASURF:8080' !!! d = DATE() xx = CREATEOBJECT("XMLAdapter") ? o.GetLatestDateTime() && ! ? o.GetLatestDate tt=o.GetCursOnDate(DATE()) q=tt.ITEM(0).parentnode s1=q.XML && xx.LOADXML(s1,.F.,.T.) && загружаем полученную информацию в созданный адаптер Это все работает в XML описание : - <operation name="EnumValutes"> <documentation>Справочник по кодам валют (как DataSet)</documentation> <input message="s0:EnumValutesSoapIn" /> <output message="s0:EnumValutesSoapOut" /> </operation> o.EnumValutes() - ругается tt = o.EnumValutes(1) - работает Так откуда брать описание параметров (методом тыка ?) 3? tt= O.GetSeldCursOnDate(D) - ругается на загрузке : xx.LOADXML(s1,.F.,.T.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2005, 15:32 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
To: Гулин Федор 1. Ну не совсем так. Схема всегда присутствует. Для этого надо просто набрать в Browser имя Web Service http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL и Вы увидите типы данных параметров и возвращаемые значения а так-же их тип. Другое дело, что при приеме XML файла в нем самом схемы может не быть. FoxPro правильно интрепертирует тип данных, но у него нет поля String переменной длины, вот он и дает то что может - Memo... 2. Насколько я понял метод EnumValutes имеет один параметр на входе (это Вы увидите, если загрузите указанную мной выше Web page)... Так что этот параметр обязателен. 3. Перед загрузкой в XML Adapter я бы рекомендовал посмотреть, что внутри у Вас в s1. (Как это сделать - есть прямо в примере, но закоментировано)... P.S. По поводу явного указания Proxy Server... Интересная мысль, хотя как правило при правильном конфигурировании клиента ISA Server все работает по умолчанию. Примененные Вами команды описаны в руководстве к SOAP 3.0 так что если кто решит "копнуть еще глубже" - поле для изучения довольно обширное... Good luck! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 10:51 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Кстати о "копнуть поглубже"... Например, если я в методе сервиса пишу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 11:08 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
В дополнение к предыдущему сообщению : моим сервисом должны пользоваться и юниксоиды... Поэтому данный вопрос для меня является актуальным... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 11:10 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
1. я и имел виду описание размеров полей xsd - можно ли получить их или если нельзя то почему ( специально это так сделано или ?) 2.так я там и смотрел :) http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL в XML описание : - <operation name="EnumValutes"> <documentation>Справочник по кодам валют (как DataSet)</documentation> <input message="s0:EnumValutesSoapIn" /> <output message="s0:EnumValutesSoapOut" /> </operation> но все равно хоть убей не вижу (понимаю)(( - как определить тип и кол-во параметров ps EnumValutes работает и с 1 и с DATE() 3. tt= O.GetSeldCursOnDate(D) - ругается на загрузке : xx.LOADXML(s1,.F.,.T.) конечно я смотрел на s1 причем с час наверно :) :(( просто tt=o.GetCursOnDate(DATE()) - работает - ну я сразу решил проверить похожий метод <GetSeldCursOnDateResult xmlns="http://web.cbr.ru/"><xs:schema id="ValuteData" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop"><xs:element name="ValuteData" msdata:IsDataSet="true" msdata:Locale="ru-RU" msprop:OnDate="Error"><xs:complexType><xs:choice maxOccurs="unbounded"/></xs:complexType></xs:element></xs:schema><diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"/></GetSeldCursOnDateResult> ps ? то вообщем ОБЩИЙ - как пользоваться Ws ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 12:33 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Станислав C. то надо ли переводить результат (lcOutput) в кодировку, указанную в "SOAP-конверте" (UTF-8) или оно все само правильно преобразуется при помощи SOAPа? Хороший вопрос... Есть и ответ - попробовать оба варианта... Из моей практики - обычно не надо, если все указано правильно... Но я с Unix не работал, по этому утверждать ничего не могу определенно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 12:51 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Гулин Федор1. я и имел виду описание размеров полей xsd - можно ли получить их или если нельзя то почему ( специально это так сделано или ?) 2.так я там и смотрел :) http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL в XML описание : - <operation name="EnumValutes"> <documentation>Справочник по кодам валют (как DataSet)</documentation> <input message="s0:EnumValutesSoapIn" /> <output message="s0:EnumValutesSoapOut" /> </operation> но все равно хоть убей не вижу (понимаю)(( - как определить тип и кол-во параметров ps EnumValutes работает и с 1 и с DATE() 3. tt= O.GetSeldCursOnDate(D) - ругается на загрузке : xx.LOADXML(s1,.F.,.T.) конечно я смотрел на s1 причем с час наверно :) :(( просто tt=o.GetCursOnDate(DATE()) - работает - ну я сразу решил проверить похожий метод <GetSeldCursOnDateResult xmlns="http://web.cbr.ru/"><xs:schema id="ValuteData" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop"><xs:element name="ValuteData" msdata:IsDataSet="true" msdata:Locale="ru-RU" msprop:OnDate="Error"><xs:complexType><xs:choice maxOccurs="unbounded"/></xs:complexType></xs:element></xs:schema><diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"/></GetSeldCursOnDateResult> ps ? то вообщем ОБЩИЙ - как пользоваться Ws 1. Как я писал в статье - в XML файлах - использование схемы является опционным - оно может быть, а может и не быть. В курсе валют его явно нет (то есть если Вы распечатаете принятый XML файл - то там его нет). Все ответы на Ваши вопросы находятся внутри XML файла. Исключение - когда схема может быть внешней. 2. Странно, но я увидел немного другую картину: Код: plaintext 1. 3. Если то, что Вы привели все - то там ничего нет, по этому не может и загрузиться XML Adapter... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 13:02 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Спасибо Сергей <s:element minOccurs="1" maxOccurs="1" name="On_date" type="s:dateTime" /> tt= O.GetSeldCursOnDate( {1.7.2005 :} ) && Datetime !!! сам себе отвечу :)) (может кому-то еще пригодится ) все ответы на мои ? находятся по адресу http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?xsd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 15:28 |
|
||
|
Есть задумка написать статью о применении Web Services и FoxPro - нужен Ваш совет
|
|||
|---|---|---|---|
|
#18+
Хотя нет я поспешил : http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx а схемы данных нет ps когда числовое поле vnom делается n 20(19) хотя оно MAX N(6) это как-то не хорошо :( и как корректно определить размер поля - можно конечно программно но ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2005, 15:52 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33177477&tid=1588945]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 364ms |

| 0 / 0 |
