2016-10-04 2 views
0

자바 스크립트 용 ArcGIS API를 사용하여 PDF 보고서를 표시해야하는데, ArcGIS 서버에서 보고서를 작성했기 때문에이 API를 사용하고 있습니다.JavaScript 용 ArcGIS API - 인쇄 작업이 수행되지 않습니다.

JS 코드 : 저는는 ArcGIS에서 온 응답을 분석하고 있습니다 때문에이 printReport 방법을 실행하면

function printReport(){ 
    var printTask = new PrintTask({ 
     url: ptReport, 
     mode: "async" 
    }) 
    var template = new PrintTemplate({ 
     format: "pdf", 
     exportOptions: { 
     dpi: 96 
    }, 
    outputSize:[800, 1100], 
    layout: "", 
    layoutOptions: { 
     titleText: "", 
     authorText: "" 
     } 
    }); 
    var params = new PrintParameters({ 
     view: view, 
     template: template, 
     extraParameters: { 
     "pPerdidaCablesConectores" : "1 dB", 
     "pOtrasPerdidas" : "0 dB"   
     } 
    });  
    printTask.execute(params).then(sendRequestPrint, showError); 
} 
function sendRequestPrint(data){   
    console.log(data.value); //it always is void 
} 

그것이 사실, 보고서는 서버에 생성되고, 잘 작동, 나는 그것을 알고 서버 : sendRequestPrint 방법이 runned 때

enter image description here

이 시점에서 모든 잘 작동하지만, 응답은 항상 무효 온다.

보고서가 생성되었는지 여부가 응답에 포함되지 않은 이유는 무엇입니까?

답변

0

PrintTaskcomplete 함수 매개 변수를 검토하십시오. 리턴 된 타입은 DataFile이다.

https://developers.arcgis.com/javascript/3/jsapi/datafile-amd.html

PrintTask

내부 서버의 응답을 구문 분석하고 다른 개체를 반환합니다. 다음과 같이 간단히 사용해야합니다.

function sendRequestPrint(data){   
    console.log(data.url); 
} 
0

피드백 보내기 현재 상태 이것은 의도적으로 설계된 동작입니다. onComplete 이벤트를 수신하고 DataFile 객체를 검사 한 다음 반환 된 URL을 다시 요청하여 pdf를 가져와야합니다. 이것은 코드에서 이미 수행 한 작업입니다. 당신이 <> .value.url에서 당신의 문서의 URL을 게시 한 이미지에서 https://developers.arcgis.com/javascript/3/jsapi/printtask-amd.html

:

는 PrintTask 예제에 대한 설명서를 참조하십시오. 당신은 직접 PrintTask 처리 당신을 위해이 프로세스를 자동화하기 위해 인쇄는 Dijit을 사용하지 않도록 할 수 있습니다

function sendRequestPrint(data){   
    var url = data.value.url; 

    // make a request to get the pdf 
    // do other stuff... 

} 

: 뭔가처럼

그래서 콜백이 있어야 할 https://developers.arcgis.com/javascript/3/jsapi/print-amd.html

0

나는

시도
function sendRequestPrint(data){   
    console.log(data.url); 
} 

그것은보다

작업 ks 많은 사람들.

+0

Pls가 직접 답변을 게시하는 대신 올바른 답을 표시합니다. 감사 –

관련 문제