How exactly do Amazon MWS Order Reports work - amazon-mws

I used MWS scratchpad to schedule Order Reports with the _15_MINUTES_ schedule, I thought that every 15 minutes, a new order report will be created and I can download it, however, only 1 report has been created (I changed the IDS for public display)
<ReportInfo>
<ReportType>_GET_ORDERS_DATA_</ReportType>
<Acknowledged>false</Acknowledged>
<ReportId>2456744422183913</ReportId>
<ReportRequestId>12543213592</ReportRequestId>
<AvailableDate>2019-10-04T09:20:24+00:00</AvailableDate>
</ReportInfo>
So how do I get new orders, is it that every 15 minutes, the same report will be updated with the new orders? will I never ever have to schedule order reports after this? I'm not clear on how it works.
I'm using the python3 mws API for my work if it helps.
Any help would be appreciated.

Have a look at this: What you should know about the Amazon MWS Reports API section, if you haven't already.
A new report will be generated at the time interval you specified. It will be a completely new report with a different id. You can query GetReportRequestList for the status and then when the report is ready, call GetReport with the ReportID from the previous step.
Your schedule should be indefinite. Check to make sure your report is schedulable and see if there are restrictions on how often you can request it.

Related

SSRS Job Custom steps being deleted

I have added some custom steps to some of my SSRS jobs however they are being removed after a couple of days every time. I know that if you add custom jobs and then change the report or the subscription in the UI then it overwrites the jobs. However they are not being touched yet they are still disappearing.
Has anyone else come across this problem ?
Although I often customize jobs that run subscriptions - no, I haven't come across that problem. I did not customize the jobs that were created automatically, instead I created my own ones.
For a subscription to successfully fire, the name of the job isn't important. Instead, the SQL code to execute the subscription (to be more specific: the SubscriptionID) is what you need to know. Since you were able to find the jobs that execute specific subscriptions, I think that you don't have a problem in finding this information, neither. The code you need looks like this:
exec [ReportServer].dbo.AddEvent #EventType='TimedSubscription', #EventData='<YourSubscriptionID>'
You can use this code in your own jobs as well, and it will work as long as the subscription is there.
The name of the SSRS-generated job is the ID of the report schedule that you define for the subscription. This name is needed by SSRS to know where to change the schedule when you change the schedule of the subscription. As you found out, SSRS resets these jobs not only when a subscription is changed. But you don't need all these jobs when creating your own jobs that run the subscription.
To get rid of the auto-generated job with that cryptic name, don't just delete it yourself (as SSRS would re-create it), instead change the schedule of the subscription to a shared schedule that will never run. For this, I created a shared schedule (under site settings) named "Disabled Schedule" and disabled that schedule.

SSRS 2016 - subscription subject from variable

I need to pass a current date variable dynamically to SSRS subscription subject. Is it possible when using standard subscription ?
I know it may be obtained using data-driven subscription but then I get report sent as many times as number of rows in the report, and I only need the report to be sent once.
I just need to have something like "Report XXX, #GETDATE()" in subject.
Is it possible to also set dynamic report name in Excel file sent using the SSRS subscription ?
You can obtain the Execution Time of the report using #ExecutionTime, see this link. However, you want to make sure the execution time represents when the report was rendered or when the subscription processed the report, I am sure it is the former and it could be problematic for snapshot/cached reports. For non-cached reports this should be the current date outside of the edge case of crossing midnight server time.

users and expiration date

I have a question that I hope someone can help me with, I would like to be able to search for how many paying members my website has at a specific date.
They belong to their own role "members" and there is an expiration date for each member. If they do not have an expiration date, they should also be listed.
Should I be able to use 2sxc module for this and would anyone tell me how to do?
You would need to have an intermediate understanding of SQL and the tables/fields related to the results you are trying to achieve. Though it is possible to get done in 2sxc, I would recommend starting the effort the DNN Reports module. That should let you focus on getting the results you need in the SQL Query first (since the display part is auto/default. Then, once you have the right query, you could move it over to 2sxc (or any module that allows data to be queried and returned as a result (set)) and do something more useful.

Amazon MWS: how can I update my orders status without throttling?

I'm working with amazon MWS and I have a cronJob that update my database with the latest orders, so far so good..
The thing is, Im updating my database with the latest new (pending) orders, and once the order is became "Shipped" (or any other status) my database order is still on pending status.
here are the solutions I thought about:
1) for every "Pending" order, Ill call amazon, get order status and update the database -> I think this is a bad solution since Ill have to call amazon many times, for every pending order which will cause Amazon to block me (throttle)
2) get all "non pending" orders in the last week or so, and compare with my database -> also a bad idea, since I might have older orders that their status has changed, and most of the results are probably already updated in my db.
suggestions?
Thank you!
I managed to fix it by adding a simple filter "Modified" since the previous call time,
I'm using one of Amazon's MWS libraries (Im working with MWS laravel library here), so I have added:
$amz = new AmazonOrderList($storeName);
$amz->setLimits('Modified', "-[last database update here]");
That is, Good luck.

CRM online Report not updating?

I have a problem where after a weekly activity report is run, there could be updates to an activity. But after the report has been run again the update information is not shown on the report.
I have created the reports in report wizard.
My filter criteria:
Activities
Activity Status Equals Completed;Open;Scheduled
AND Start Date Last Week
Customers
Modified On Last X Days 30
I have tried
Clearing the filtered criteria.
Deleting the report.
Re-uploading the report.
Refreshing the Webpage.
Could this be something on the Report Server Side?
Like clearing the cache?
How would I clear the cache?
Thanks
When you say the updated information isn't shown on the report, you're saying that it only displays the original information at all times?
It depends on what browser you are using to clear your cache, but this site makes it pretty easy to figure it out. Refresh Your Cache

Resources