2014-04-01 2 views
-1

Я пытаюсь загрузить файлы .xlsx на свой сервер, пожалуйста, кто-нибудь скажет мне, что я делаю неправильно?proc загрузить локальный файл

rsubmit; 
filename locref %unquote(%str(%'("C:\Users\Admin\Desktop\")%')); 

Proc Upload 
    infile=locref('*.xlsx') 
    outfile=%unquote(%str(%'("*.xlsx")%')) BINARY; 
run; 
endrsubmit; 

В основном люди будут падать .xlsx файлы в папку, с разными именами файлов и я хотел бы, чтобы загрузить их все на сервер.

Использование SAS 9.3 64-бит с Windows 7 64-бит и 32-разрядный Office 2010.

Спасибо

+0

Почему у вас так много грязных цитат/неузнаваемости во всем? – Joe

+0

Кроме того, это очень похоже на ваш предыдущий вопрос. Почему вы спрашиваете это снова? Вы не указываете, что здесь не работает. – Joe

+0

Отмечено, что @Joe просто пытается улучшить код, созданный за годы ухода коллег. – user3442162

ответ

0

Взгляните на этот пример:

filename locref 'c:\'; 
rsubmit; 
filename fref '/local/programs'; 
proc upload infile=locref('*.sas') 
      outfile=fref; 
run; 
endrsubmit; 

Обратите внимание на параметр outfile= относится к fileref, который является выходным каталог, а не файл. Кроме того, в вашем коде первое заявление на имя файла должно появиться до rsubmit;, как в примере.

Ваш окончательный код будет:

filename locref "C:\Users\Admin\Desktop"; 
rsubmit; 
filename outref "<INSERT SERVER-SIDE DIRECTORY HERE>"; 

Proc Upload 
    infile=locref('*.xlsx') 
    outfile=outref BINARY; 
run; 
endrsubmit; 

нотабене Пожалуйста, замените бит <> в строке 3 на каталог на удаленном сервере, на который вы загружаете. Вы не цитировали его в своем исходном коде, поэтому я не уверен, куда вы хотите, чтобы файлы были доступны.

Как сказал @Joe, нет необходимости в котировках/комментариях, это просто делает код более трудным для чтения и не приносит никакой пользы в этом случае.

+0

Спасибо, код, который я знаю, грязный ... Я пытаюсь построить/улучшить существующий код у коллег, которые покинули бизнес [не полезно, я знаю]! Возможно ли использовать подстановочный знак .xls and.xlsx? например (* * .xlsx ',' *. xls ')? – user3442162

+0

Попробуйте '' * .xls? '', Знак вопроса соответствует второму« x »в« xlsx », но также принимает пустой. Если это не сработает, попробуйте '' * .xls * '', первое решение предпочтительнее. – mjsqu

+0

Ни одна из них не работает, я получаю следующую ошибку: «ПРЕДУПРЕЖДЕНИЕ: никакие внешние файлы не соответствуют спецификации подстановки». – user3442162

Смежные вопросы