Wenn ich GetReport aufruft, bekomme ich nur die Header für die tabulatorgetrennte Antwort. Wenn ich jedoch den Notizblock für RequestReport, RequestReportList verwende, benutze RequestId, um GeneratedReportId und GetReport mit dieser ID zu erhalten. Ich bekomme die erwarteten Ergebnisse.Amazon MWS _GET_MERCHANT_LISTINGS_DATA_ leer
Hat jemand eine Idee, warum mein Code nicht den Bericht wie das Scratchpad zieht?
RequestReportRequest request = new RequestReportRequest();
request.Merchant = settings.SellerId;
request.MarketplaceIdList = new IdList();
request.MarketplaceIdList.Id = new List<string>(new string[] { settings.MarketplaceId });
request.ReportType = "_GET_MERCHANT_LISTINGS_DATA_";
RequestReportResponse requestResponse = _mws.RequestReport(request);
Thread.Sleep(15000);
Console.WriteLine(requestResponse.RequestReportResult.ReportRequestInfo.ReportProcessingStatus);
GetReportRequestListRequest reportRequestListRequest = new GetReportRequestListRequest();
reportRequestListRequest.Merchant = settings.SellerId;
List<ReportRequestInfo> requestInfos = new List<ReportRequestInfo>();
GetReportRequestListResponse reportRequestListResponse = new GetReportRequestListResponse();
reportRequestListResponse = _mws.GetReportRequestList(reportRequestListRequest);
GetReportRequestListResult reportRequestListResult = new GetReportRequestListResult();
reportRequestListResult = reportRequestListResponse.GetReportRequestListResult;
requestInfos = reportRequestListResult.ReportRequestInfo;
while (requestInfos[0].ReportProcessingStatus.ToString() != "_DONE_")
{
Thread.Sleep(20000);
reportRequestListResponse = _mws.GetReportRequestList(reportRequestListRequest);
reportRequestListResult = reportRequestListResponse.GetReportRequestListResult;
requestInfos = reportRequestListResult.ReportRequestInfo;
}
GetReportListRequest listRequest = new GetReportListRequest();
listRequest.Merchant = settings.SellerId;
listRequest.ReportRequestIdList = new IdList();
listRequest.ReportRequestIdList.Id.Add(requestResponse.RequestReportResult.ReportRequestInfo.ReportRequestId);
GetReportListResponse listResponse = _mws.GetReportList(listRequest);
GetReportListResult getReportListResult = listResponse.GetReportListResult;
GetReportRequest reportRequest = new GetReportRequest();
reportRequest.Merchant = settings.SellerId;
reportRequest.WithReportId(getReportListResult.ReportInfo[0].ReportId);
GetReportResponse reportResponse = new GetReportResponse();
string fileName = dataPath + "\\report-" + getReportListResult.ReportInfo[0].ReportId + ".txt";
reportRequest.Report = File.Open(fileName, FileMode.OpenOrCreate, FileAccess.ReadWrite);
reportResponse = _mws.GetReport(reportRequest);