powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / запись файла с сервера на клиента из CSP
25 сообщений из 30, страница 1 из 2
запись файла с сервера на клиента из CSP
    #37303921
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Вопрос у меня простой, но уже который день с ним мучаюсь. Суть такова:
Я создаю платёжные документы в Cache, которые затем в зависимости от банка
записываю на свой клиентский компьютер, связанный с банкоми, в разные папки в зависимости от банка.
Раньше я делал это через SockTerm ( терминал) создавая на сервере командный файл и запуская его -
файлы переписывались из сервера на мой компьютер - без проблем.
Сейчас всё тоже самое делаю через CSP-страницы, но копирования не происходит.
Если с сервера на сервер - копирует, с сервера на мой компьютер - не хочет, паразитка.
Запускаю этот же командный файл с севера - записывает.

Пробовал через %Library.File - всё тоже самое - такое ощущение,
что где-то в настройках нет разрешения CSP-страницам работать через сеть.

Вот моя запись в CSP :
S pathserv="\\w2k3srv\TEST\" ; - сервер
s pathcli="\\192.168.100.12\Xbank\" ; - адрес моего компьютера
s Fil="plat.txt",fil="Xbank.txt"
;
s FilFrom=pathserv_Fil
s FilAs=pathcli_fil
S F=##class(%File).CopyFile(FilFrom,FilAs)

Под SockTerm было так

S pathserv="\\w2k3srv\TEST\",pathcli="C:\Xbank\",Fil="plat.txt",fil="Xbank.txt"

s ok=0 ;AM+
i $p["TNT" d g:ok FGOOD g FBAD
. s begin=0
. s cmd=pathserv_"tmp"_$j_".bat" ;"cmd"
. o cmd:("NW"):0 e w !,"Невозможно создать командный файл на сервере" R R q
. u cmd ; w "cd "_pathcli,!
. w "copy "_pathserv_Fil_" "_pathcli_fil_"/Y",!
. w "exit",!
. c cmd
. ; s x=$zf(-1,cmd) ; выполнение на сервере
. s ok=$$Run^%ZU(cmd) ;AM-
. h 1

Смотрел на форуме - ничего подобного не нашёл. Конечно, можно сделать так -
формировать всё в CSP, а передавать - переходить на SockTerm, но не удобно и глупо.
Сache - старушка, 5.0.20
Заранее благодарю не зависимо от ответа!.
Александр.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37303965
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos , в примерах есть страничка по скачиванию файлов с клиента ( http://cache:57772/csp/samples/upload.csp)
<!-- Copyright (c) 2001 InterSystems Inc. ALL RIGHTS RESERVED. -->
<csp:class description="Demo of how to upload a file from the browser.">
<html>

<head>
</head>

<body bgcolor="#CCCCFF">

<!-- display standard sample template using a custom tag -->
<isc:SAMPLE title="Upload a file Sample">
This sample uses an '<input type=file>' element in a form to upload a file
from the web browser to CSP. Pick a file and hit the submit button to try it.
</isc:SAMPLE>

<!-- HTML Form to submit the file. You must specify the enctype="multipart/form-data" -->
<!-- for this to work -->
<form action="upload.csp" enctype="multipart/form-data" method="post">
    Enter a file to upload here: <input name=FileStream size=30 type=file>
    <p>
    <ul><input type="submit" value="Upload file"></ul>
    <p>
</form>

<!-- As form is submitted to this page look to see if we have the stream in the %request object -->
<csp:if condition='($data(%request.MimeData("FileStream",1)))'>
    <hr><br>
    Submitted filename: <b>#(%request.MimeData("FileStream",1).FileName)#</b><br>
    Size of file: <b>#(%request.MimeData("FileStream",1).Size)#</b><br>
    Mime Section: <b>#(%request.MimeData("FileStream",1).MimeSection)#</b><br>
    Type of stream: <b>#(%request.MimeData("FileStream",1).%ClassName(1))#</b><br>
    Content Type: <b>#(%request.MimeData("FileStream",1).ContentType)#</b><br>
    <br>
    First 200 characters of stream:<br>
    <ul>
    <script language="Cache" runat="server">
        New bytes
        Set bytes=%request.MimeData("FileStream",1).Read(200)
        Set bytes=##class(%CSP.Utils).DecodeData(bytes)
        Write bytes,!
    </script>
    </ul>
</csp:if>

</body>
</html>
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304012
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне не с клиента файл записать, а с сервера на клиента!
А Ваш пример сейчас попробую.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304123
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304131
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos ,

Была похожая проблема ( Microsoft Mapped Network Drives ).

Ещё проверьте учётную запись, под которой запущена служба Caché, и есть ли у этой учётной записи права на запись на зашаренный ресурс.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304145
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPosМне не с клиента файл записать, а с сервера на клиента!
Извини не правильно понял...

Как вариант - просто дать ссылку на скачивание файла. А куда его записывать - пусть выбирает сам клиент.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304179
FkViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это бухгалтеров учить, куда бросать файл!? Это бесполезно.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304193
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно а что у вас за проект на Cache, если вы пользуетесь соктермом ?
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304221
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У нас не проект. Был ДИАМС, потом MSM, потом Cache - всё же под терминалкой. Полтора программиста писали программы. Сейчас часть форм переводим на CSP.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304489
опять AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый krvsa! Ваш пример загружает содержимое файла с компьютера клиента, надо сделать каких-то полшага, чтобы записывала на компьютер клиента. Вы же умничка, тут чуть-чуть подумать и поэкспериментировать!
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304504
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos, вы с Саранского "Станкостроителя"?
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304951
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
опять AlViPos , мы такое выполняем просто по сети... Пользователь, от которого грузится Кашей, должен иметь доступ к папке с доступом на клиенте.

Если жеработатьчерез интернет - давать ссылку на файл, пусть качают и сохраняют. Научатся когда-нибудь.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37304967
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а сохрянять на сервере, а ну пользователю подключить сетевой диск?
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307155
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, Алексей Маслов, из Саранска.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307165
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А на счёт сетевого принтера - надо попробовать. Спасибо.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307168
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извиняюсь, сетевого диска, конечно. Но вот если бы кто подсказал ещё, как при печати документа из-под CSP управлять форматом вывода - книжный/альбомный. То, что нашёл в Интернете - не срабатывает. Молодец Mozila - сам определяет. Всем поменять IE на Mozila?
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307175
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPosНо вот если бы кто подсказал ещё, как при печати документа из-под CSP управлять форматом вывода - книжный/альбомный.
Теоретически может помочь вот это

Код: plaintext
1.
2.
3.
@page { 
   size: portrait; 
   /*size: landscape;*/
}

Но не факт что все браузеры такое поймут... Пока.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307184
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробовал, не проходит.
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307209
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos , значит время еще не пришло...
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307356
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую и я так пошутить с начальством, только во что это выльется,...
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307393
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos , просто настройка чего-то в вэбе у клиента вообще дело не благодарное...
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307409
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos , например в Опера это работает...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<style type="text/css">
@page { 
	size: landscape;
}
</style>
<script type="text/javascript">
</script>
</head>
<body>
<p>Test</p>
</body>
</html>
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37307411
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlViPos, напечатайте в Word из браузера

Код: 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.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
Class csp.Landscape Extends %CSP.Page {
Parameter CHARSET="utf-8";
///Меняем тип вывода
ClassMethod OnPreHTTP() As %Boolean [ ServerOnly =  1  ] {
 s %response.ContentType="application/msword" ;Как бы намекаем, что содержимое для ворда 
 s %response.Expires =  1  ;бывают проблемы с кэшированием
 q  1 
}

ClassMethod OnPage() As %Status [ ServerOnly =  1  ] {
 &html<<html><head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <meta http-equiv="Content-Language" content="ru">
 <title>М-программисты</title>
 <style type="text/css">

  @page a4Landscape  {  /*Объявили набор аттрибутов, в том числе ориентация страницы*/
    size: 29 .7cm 21cm; mso-page-orientation:landscape;
    margin: 2 .0cm  42 .5pt  2 .0cm  3 .0cm; 
    font-family: "Tahoma"; font-size: 12px;
    mso-footer-margin:.5cm;
   }

  div#Main { page: a4Landscape; } /*Применили объявленный набор аттрибутов*/ 
  p {margin:2px 0px;}
 </style>
 </head>
<body><div id="Main"><!--див, к которому применили набор аттрибутов-->
<center><h3><a href="http://karataev.nm.ru" title="Евгений Каратаев">М-программисты настолько суровы...</a></h3></center>
<div align="justify">
<blockquote>Однажды я решил повторить "Челябинские мужики настолько суровы..." из сериала "Наша раша", но в переложении к М-программистам. Знакомые посоветовали начать выкладывать на форуме. Народ поддержал, и вот что получилось.</blockquote>
<p>М-программисты настолько суровы, что вводят программы сразу в глобали.
</p><p>М-программисты настолько суровы, что могут выполнять выражения языка без компиляции.
</p><p>М-программисты настолько суровы, что делают goto куда угодно.
</p><p>М-программисты настолько суровы, что им хватает одного текущего девайса ввода-вывода.
</p><p>М-программисты настолько суровы, что не используют лишние переменные, а повторно используют ставшие ненужными.
</p><p>М-программисты настолько суровы, что им не нужно повторять по два раза, им достаточно и первой буквы.
</p><p>М-программисты настолько суровы, что могут одной командой присвоить несколько переменных сразу.
</p><p>М-программисты настолько суровы, что написанный ими код никто никогда не исправляет. Боятся.
</p><p>М-программисты настолько суровы, что написанные ими программы потомки через десятилетия используют прямо так. Повторить не могут.
</p><p>М-программисты настолько суровы, что их очень мало. Не каждый может так посуроветь.
</p><p>М-программисты настолько суровы, что не желают связываться с командами и по жизни исполняют содержимое базы данных.
</p><p>М-программисты настолько суровы, что в любой момент, если сильно обидятся, могут убить все переменные в программе вообще. Одной буквой с единственного устройства 
ввода-вывода.
</p>
<p>М-программисты настолько суровы, что для упрощения кода могут пользоваться минимальным набором символов, составляя из них осмысленные конструкции.<br/> Например: <pre>$d(^d(d,d,d)).</pre></p>
<p>М-программисты настолько суровы, что они могут изменять RunTime работу давно скомпилированного другими М-программистами кода.
</p><p>М-программисты настолько суровы, что любой, нужный для работы, инструментарий пишут исключительно сами.
</p><p>М-программисты настолько суровы, что запросто могут перейти к прямому обращению к данным.
</p><p>М-программисты настолько суровы, что могут наладить многопользовательскую работу просто через COM порты.
</p><p>М-программисты настолько суровы, что свои программы защищают простым кодом
<br><tt>i +$h> 60996  w !,"Пора платить бабки!" h</tt><br>все равно никто не сможет его взломать.
</p><p>М-программисты настолько суровы, что знают все (!) базовые команды и функции.
</p><p>М-программисты настолько суровы, что у каждого есть своя OLAP технология.
</p><p>М-программисты настолько суровы, что вообще не пишут программ, их генерят уже написаные программы!
</p><p>М-программисты настолько суровы, что не пользуются транзакциями.
</p><p>М-программисты настолько суровы, что в их программах спецсимволов больше чем букв.
</p><p>М-программисты настолько суровы, что почти не пользуются большими кнопками - пробелом и переводом строк.
</p><p>М-программисты настолько суровы, что программы хранят в данных, а данные в программах.
</p><p>М-программисты настолько суровы, что для них отменили типизацию переменных.
</p><p>М-программисты настолько суровы, что иногда и буквами не пользуются, а используют naked indicator.
</p><p>М-программисты настолько суровы, что могут так обратиться к данным (голые ссылки)! Что потом целый отдел будет разбираться что же там читают?
</p><p>М-программисты настолько суровы, что даже двойной гы-гы <nobr>(;;)</nobr> это вообще не гы-гы, а содержательные данные в программе.
</p><p>М-программисты настолько суровы, что пока ни один хостер не решается поддерживать CSP приложения.
</p><p>М-программисты настолько суровы, что могут не запускать готовую программу.
</p><p>М-программисты настолько суровы, что работая в Cache, упорно продолжают писать программы, как в MSM...
</p><p>М-программисты настолько суровы, что и сами никогда не исправляют собственный код. Боятся.
</p><p>М-программисты настолько суровы, что готовы разрабатывать все что угодно!
</p><p>М-программисты настолько суровы, что могут запрограммировать даже ветер в голове... <nobr>(с)ЛВН</nobr>
</p><p>М-программисты настолько суровы, что адресуют точки входа программ напрямую, по номеру строки.
</p><p>M-программисты настолько суровы, что им достаточно одной команды QUIT
<br>См. Winfried O. Gerum. "Tips 'n' Tricks QUIT - The Ultimate Command"
<br>Было опубликовано в MUG/MTA - North America. February  1993 : M Computing, Volume  1 , Issue  1 
</p><p>М-программисты настолько суровы, что всякие там отладчики им не нужны.
</p><p>Оригинальные сообщения и их авторство - форум Cache на сайте <a href="http://www.sql.ru/forum/actualtopics.aspx?bid=56"><nobr>www.sql.ru</nobr></a>
</p>
</div></div>

 </body>
 </html>>
 
 Quit $$$OK
}
}

Ну и потом открыть в ворде, Печать-Предварительный просмотр
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37308679
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем, что не бросаете в трудные минуты и помогаете советами!
...
Рейтинг: 0 / 0
запись файла с сервера на клиента из CSP
    #37308984
AlViPos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый doublefint !
Извините меня за примитивизм, данный кусок программы вставляется не в CSP, или в CSP, но под каким-то скриптом? Не возводи глаза к небесам, ну не знаю я, новичок-старичок...
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / запись файла с сервера на клиента из CSP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]