Writing execution results to File using Jython in ODI
In this post, I am going to show how to write files in customized format by leveraging Jython technology in ODI. Out of the box, ODI provides support for delimted, fixed length, xml and complex files. But if there is a need to produce pdf or custom formated output, we can use Jython to achieve.
To demonstrate this capability, I am taking the example of write execution details of ODI to a custom formated file. The file format will look like this following.
/*------------------------------------------------------------------------------------------------------------------------------------------------*/ EXECUTION REPORT FOR SCENARIO : WRITE_EXECUTION_REPORT ( THU NOV 14 10:34:33 2013 ) /*------------------------------------------------------------------------------------------------------------------------------------------------*/ StepNo StepName StepType BeginningTime EndTime Duration Status Error_Msg ------ --------------------------------------- ------------------- --------------------- --------------------- ---------- -------------- ---------- 0 int_file_table Interface 14-NOV-2013 10:34:11 14-NOV-2013 10:34:12 1 Success None 1 write_execution_report Procedure 14-NOV-2013 10:34:12 None 0 UNKNOWN None /*------------------------------------------------------------------------------------------------------------------------------------------------*/
Following are the steps I am going to follow to demonstrate this use case.
1. I will create a procedure which will connect to ODI internal tables and get the execution details for the current session_id
2. I am going to create a file_to_table interface just to have a success scenario and a procedure which raises PL/SQL exception to demonstrate the error scenario.
3. We will create a package and place the interfaces and procedure for success/error scenario and also have the execution report procedure we developed in first step as a last steps for success as well as error scenario to extract the execution details to file with formatting.
Before we write the procedure, Lets understand the ODI internal tables a bit on how they store the execution details.
1. SNP_SESSION - stores the session_id and detailed related to session
2. SNP_SESS_STEP - All interface, package, scenario and procedure details.
3. SNP_STEP_LOG - This has the steps within each odi object.
Just to put the table relation ships into perspective, showing the sample data for a sample session here. This data is for the below specified package in ODI.
SNP_SESSION - Has one row per execution at the package level here.
SNP_SESS_STEP - represents objects inside a package with design time details.
SNP_STEP_LOG - represents objects inside a package with run time details (including error_message).
SNP_SESS_TASK - represents the KM, details related to interface,procedure, tools in a package with design time details .
SNP_SESS_TASK_LOG - represents the KM, details related to interface,procedure, tools in a package with run time details (including error message)
In the execution report, I developed I am not showing task level details, instead it stops at the step level. But I wanted to show here that task level details can also be captured in the log.
Execution Report Procedure
Create a procedure and add one command in the details with the following Jython code. Make sure that Jython technology is selected in the target tab. This procedure should be added as a last step in the package so that it takes all the execution details and puts it into formatted file.
This can be used for successful as well as for error conditions for producing the log.
Please find below the complete code for using it in your implementation.
1. It take the connection for current work repository
2. Using the current session_no to retrieve execution details using the query
3. Spools the query data with formatting to a file.
This can be used for successful as well as for error conditions for producing the log.
Please find below the complete code for using it in your implementation.
1. It take the connection for current work repository
2. Using the current session_no to retrieve execution details using the query
3. Spools the query data with formatting to a file.
import string import java.sql as sql import java.lang as lang import re import time sourceConnection = odiRef.getJDBCConnection("WORKREP") output_write=open('c:/temp/Execution_Report_<%=odiRef.getSession("SESS_NO")%>.out','w') sqlstring = sourceConnection.createStatement() localtime = time.asctime( time.localtime(time.time()) ) print >> output_write, "/*------------------------------------------------------------------------------------------------------------------------------------------------*/\n" print >> output_write,'%s\n' % (str(' Execution Report for scenario : '+'<%=odiRef.getSession("SESS_NAME")%>'+' ( '+localtime+' ) ').upper().center(124)) print >> output_write, "/*------------------------------------------------------------------------------------------------------------------------------------------------*/\n" sqlstmt="select rownum, \ sess.sess_no, \ sess.sess_name, \ step_log.nno, \ step.step_name, \ case when step.step_type='F' THEN 'Interface' \ when step.step_type='VD' THEN 'Variable declaration' \ when step.step_type='VS' THEN 'Set//Increment variable' \ when step.step_type='VE' THEN 'Evaluate variable' \ when step.step_type='V' THEN 'Refresh variable '\ when step.step_type='T' THEN 'Procedure' \ when step.step_type='OE' THEN 'OS command' \ when step.step_type='SE' THEN 'ODI Tool' \ when step.step_type='RM' THEN 'Reverse-engineer model' \ when step.step_type='CM' THEN 'Check model' \ when step.step_type='CS' THEN 'Check sub-model' \ when step.step_type='CD' THEN 'Check datastore' \ when step.step_type='JM' THEN 'Journalize model' \ when step.step_type='JD' THEN 'Journalize datastore' \ ELSE 'UNKNOWN' END as step_type, \ to_char(step_log.step_beg,'DD-MON-YYYY HH24:MI:SS') as step_beg, \ to_char(step_log.step_end,'DD-MON-YYYY HH24:MI:SS') as step_end, \ step_log.step_dur, \ case when step_log.step_status='D' THEN 'Success' \ when step_log.step_status='E' THEN 'Error' \ when step_log.step_status='Q' THEN 'Queued' \ when step_log.step_status='W' THEN 'Waiting' \ when step_log.step_status='M' THEN 'Warning' \ ELSE 'UNKNOWN' END as step_status, \ step_log.nb_row, \ step_log.nb_ins, \ step_log.nb_upd, \ step_log.nb_del, \ step_log.nb_err, \ dbms_lob.substr( TRANSLATE ( step_log.error_message, 'x'||CHR(10)||CHR(13), 'x'), 600, 1 ) as error_message \ from snp_session sess right outer join snp_sess_step step on sess.sess_no = step.sess_no \ inner join snp_step_log step_log on step.sess_no = step_log.sess_no and step.nno = step_log.nno \ where step_log.sess_no = <%=odiRef.getSession("SESS_NO")%> \ order by step_log.nno" print >> output_write, "StepNo StepName StepType BeginningTime EndTime Duration Status Error_Msg\n" print >> output_write, "------ --------------------------------------- ------------------- --------------------- --------------------- ---------- -------------- ----------\n" result=sqlstring.executeQuery(sqlstmt) while (result.next()): rownum=result.getInt("rownum") nno=result.getInt("nno") step_name=result.getString("step_name") step_type=result.getString("step_type") step_beg=result.getString("step_beg") step_end=result.getString("step_end") step_dur=result.getInt("step_dur") step_status=result.getString("step_status") error_message=result.getString("error_message") print >> output_write,'%7s%40s%20s%22s%22s%11s%15s%s\n' % (str(nno).ljust(7),step_name.ljust(40),step_type.ljust(20),str(step_beg).ljust(22),str(step_end).ljust(22),str(step_dur).ljust(11),step_status.ljust(15),str(error_message)) print >> output_write, "/*------------------------------------------------------------------------------------------------------------------------------------------------*/\n" sourceConnection.close() output_write.close()
The only restriction in this method is that we will not able to get the status of the execution report into the file since query is executed while it is run.
If we don't need this procedure details, we can restrict it in the where clause so that you wont see it in the report.
Sample Examples.
I will try to show a successful run as well as error run samples files here.
1. In this package, I am running an interface and on successful run, it produces the log.
/*------------------------------------------------------------------------------------------------------------------------------------------------*/ EXECUTION REPORT FOR SCENARIO : WRITE_EXECUTION_REPORT ( THU NOV 14 10:34:33 2013 ) /*------------------------------------------------------------------------------------------------------------------------------------------------*/ StepNo StepName StepType BeginningTime EndTime Duration Status Error_Msg ------ --------------------------------------- ------------------- --------------------- --------------------- ---------- -------------- ---------- 0 int_file_table Interface 14-NOV-2013 10:34:11 14-NOV-2013 10:34:12 1 Success None 1 write_execution_report Procedure 14-NOV-2013 10:34:12 None 0 UNKNOWN None /*------------------------------------------------------------------------------------------------------------------------------------------------*/2. For a error run a sample report is shown here. In this case, I run the interface, run a PL/SQL block which raises exception to produce error and on error run the execution report.
Lets look at the log for the error.
/*------------------------------------------------------------------------------------------------------------------------------------------------*/ EXECUTION REPORT FOR SCENARIO : WRITE_EXECUTION_REPORT ( THU NOV 14 14:50:17 2013 ) /*------------------------------------------------------------------------------------------------------------------------------------------------*/ StepNo StepName StepType BeginningTime EndTime Duration Status Error_Msg ------ --------------------------------------- ------------------- --------------------- --------------------- ---------- -------------- ---------- 0 int_file_table Interface 14-NOV-2013 14:50:08 14-NOV-2013 14:50:15 7 Success None 1 proc_call_stored_procedure Procedure 14-NOV-2013 14:50:15 14-NOV-2013 14:50:16 1 Error ODI-1226: Step proc_call_stored_procedure fails after 1 attempt(s).ODI-1232: Procedure proc_call_stored_procedure execution fails.ODI-1228: Task proc_call_stored_procedure (Procedure) fails on the target ORACLE connection oracle_xe_hr.Caused By: java.sql.SQLException: ORA-20001: This is a custom errorORA-06512: at "HR.RAISE_EXCEPTION", line 15ORA-06512: at line 2 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889) at oracle.jdbc.driver.T4CTTIfun.receive(T 2 write_execution_report Procedure 14-NOV-2013 14:50:16 None 0 UNKNOWN None /*------------------------------------------------------------------------------------------------------------------------------------------------*/
It doesn't work in ODI 12 c as SNP_SESS_STEP table not storing required data..
ReplyDeleteHi Murugananth, Very good article, thanks for providing in-depth information on Oracle Data Integrator Technology. Please continue sharing.
ReplyDeleteIf I link several interfaces in a package, How can I write this report for the entire execution ?
ReplyDeleteThanks
What if I want to attach this output file in a e-mail using ODISendMail object ? If the output always change its name, how can I could attach it ?
ReplyDeleteThis is the awesome post, i like this content...
ReplyDeleteWebsphere Training In Hyderabad
This comment has been removed by the author.
ReplyDeleteHi Author,
ReplyDeleteI'm not able to fetch data from ms sql server and put o/p data in csv file by following tjis approach.Please tell me data can be pulled or not using this approach.
This comment has been removed by the author.
ReplyDeleteThank you for your guide to with upgrade information.
ReplyDeleteOracle SOA Online Training
I recently came across your blog and have been reading along. I thought I would leave my first comment.
ReplyDeleteapple iphone service center in chennai | apple ipad service center in chennai | apple iphone service center in chennai
There's no doubt i would fully rate it after i read what is the idea about this article. You did a nice job..
ReplyDeletedata analytics course malaysia
Hi, I really loved reading this article. By this article i have learnt many things about ODI topic, please keep me updating if there is any update.
ReplyDeleteODI Online Training
ODI Classroom Training
ODI Training
ODI Training in Hyderabad
Oracle Data Integrator Training
I am really enjoying reading your well written articles. It looks like you spend a lot of effort and time on your blog. I have bookmarked it and I am looking forward to reading new articles. Keep up the good work.
ReplyDeleteAI learning course malaysia
nice post
ReplyDeletetableau classroom training in bangalore
best tableau training institutes in bangalore
tableau training in bangalore
UiPath Training in Bangalore
data science with python training in bangalore
best data science training in bangalore
best data science training institute in bangalore
Nice Blog We are providing technical support in Quickbooks Payroll Support Phone Number 1-800-986-4607.If you are facing any issue in Quickbooks dial our toll free number 1-800-986-4607.
ReplyDeleteThanks for providing this blog for us. Actually We are an Accounting solution company. Now a days maximum user working on the Accounting software and the availability of Quickbooks Support Phone Number can be easily solved. You have to dial 800-901-6679 for the urgent solution.
ReplyDeletehttps://tinyurl.com/y5e6s475
Facing any trouble while using Quickbooks? Contact Quickbooks Support Phone Number. As they provide immediate & effective solutions of the issues, you preoccupied with. Feel free to contact them, as they are available for you, round the clock. It doesn’t matter at what time, you come across the issue. Get in touch with them, by just dialing Quickbooks Support Phone Number 800-901-6679. Just Ask your queries & gain solutions.
ReplyDeleteNice Blog. Get instant & easy solutions for your queries by contacting us, on Quickbooks Support Phone Number 1-800-986-4607. We provide the best support service to the user because Our Team constitutes of Highly skilled & Experienced staffs.
ReplyDelete
ReplyDeletehttps://nexaccounting.weebly.com/
https://www.fyple.com/company/quickbooks-support-phone-number-ys96gwc/
https://helpingdotnet.blogspot.com/feeds/3454155590478389003/comments/default
https://www.postallads4free.com/financial_services-ad691861.html
Happy to read this blog very nice, in this technology world
ReplyDeleteAws training chennai | AWS course in chennai
manual testing course chennai | Manual testing class chennai
Got stuck in QuickBooks errors ? Not to worry now as we are here to solve all your queries. We at our Quickbooks Support Phone Number 1-800-986-4607 will assist you to get out of trouble. Avail the benefits of our services and run your business smoothly. Stay connected with us for more information.
ReplyDeleteConnect to us at Quickbooks for Mac Support Phone Number 1-800-986-4607 for any QuickBook assistance. We deliver support services to a wide range of clients. We're accessible to you 24*7. Feel Free to reach us whenever you need it.
ReplyDeleteConnect to us at Quickbooks for Mac Support Phone Number 1-800-986-4607 for any QuickBook assistance. We deliver support services to a wide range of clients. We're accessible to you 24*7. Feel Free to reach us whenever you need it.
ReplyDeleteYour post is amazing learn sql online
ReplyDeleteNice Blog ! Do you Want help to solve your problems with QuickBooks? If so, please contact us at our QuickBooks Customer Helpline Number 855-9O7-O4O6.The team will help you by delivering the best solutions possible.
ReplyDeleteDial Quickbooks Support Phone Number 855-907-0406 that is available as toll-free. We will help to enjoy happy accounting.
ReplyDeleteView on Map: QuickBooks Customer Service
Do you want help to get your QuickBooks issues resolved in seconds? If yes, Dial our Accounting & Bookkeeping Services 855-907-0406 now! We will let you do your accounting duties without any interruptions.
ReplyDeleteView on Map: QuickBooks Support Phone Number
Nice Blog ! Whenever you have stuck in any problem, you can take our support. We're there 24 hours a day. Dial our QuickBooks Pro Support Phone Number +1(855)-9O7-O4O6 now!
ReplyDeleteNice Blog! Acquire instant solution to all your queries, if get preoccupied with technical snags in the software. Our Quickbooks Support Phone Number 855-907-0406.
ReplyDeleteRead More:
Quickbooks Support Phone Number
Quickbooks Support Phone Number
Quickbooks Support Phone Number
Do you Need instant help fixing problems with your QuickBooks? Now dial our QuickBooks Support Phone Number Illinois 855-9O7-O4O6! We have technical experts who can instantly fix your problems.
ReplyDeleteNice Blog ! Connect to us at QuickBooks For Mac Support Phone Number
ReplyDelete855-9O7-O4O6 for any QuickBook assistance. We deliver support services to a wide range of clients.
View On Map: QuickBooks Support Phone Number
Are you Facing issues in the QuickBooks? Call QuickBooks Support Phone Number Illinois 855-9O7-O4O6 to get instant & effective solution from our QuickBooks experts. Our QuickBooks support team available 24*7 to offer assistance.
ReplyDeleteFacing any sort of difficulty in QuickBooks ? Dial QuickBooks Pro Support Phone Number 855-9o7-0406 to gain valuable assistance from our QuickBooks Proficients.
ReplyDeleteView on Map: QuickBooks Support Phone Number
Nice Blog ! Call QuickBooks Support Phone Number 855-907-0406 for any kind of technical issues in the software. Acquire eminent support by giving a call on the support. As your queries get heard by our QuickBooks experts who are well versed & experienced in resolving error issues of the software. Don’t hesitate to call our QuickBooks experts anytime.
ReplyDeleteIf you are facing any error in QuickBooks software? Dial Quickbooks Customer Service Phone Number 855-907-0406.
ReplyDeleteNice Blog! Acquire instant solution to all your queries, if get preoccupied with technical snags in the software. Our Quickbooks Support Phone Number USA 844-908-0801.
ReplyDeleteThe software gets equipped with extensive features mainly tailored to accomplish accounting & financial tasks of a business firm. Apart from these, Intuit also looks after the requirement of software users via QuickBooks Customer Service Phone Number 1-833-780-0086. For More Visit: https://g.page/quickbooks-support-pennsylvania
ReplyDeleteNice Blog ! If you have some trouble with QuickBooks as to how to download or use or correct errors, or any other question, dial QuickBooks Toll Free Phone Number 855-9O7-O4O6. There's a group of experts to solve your problems.
ReplyDeleteAre you getting any kind of trouble in QuickBooks Accounting software? Don't worry about it Resolve your issue by calling QuickBooks Customer Service Number 1-855-907-0406.
ReplyDeleteFor Netgear Extender solution Kindly read this informative blogs.
ReplyDeletehttps://utah.instructure.com/eportfolios/30119/Home/How_to_Setup_Netgear_Nighthawk_X6_AC2200_WiFi_Extender
https://uberant.com/article/669982-netgear-nighthawk-ex7000-ac1900-wifi-extender-setup/
http://nighthawkmywifiext.mystrikingly.com/blog/fix-my-wifi-devices-can-t-detect-netgear-extender-network-name
https://nighthawkmywifiext.weebly.com/netgear-extender.html
QuickBooks Support Phone Number New Jersey
ReplyDeleteQuickBooks Support Phone Number New Jersey
QuickBooks Support Phone Number New Jersey
Nice Blog !
ReplyDeleteWhen Found QuickBooks Banking Error 103, don’t get worried about it. Immediately ring a call to us at 1-855-9O7-O4O6.Arrival of QuickBooks Banking error indicates that your sign-in credentials don't match with your Bank’s website.
Nice & Informative Blog ! Facing QuickBooks Error 3371? Don’t worry, dial us at 1-855-9O7-O4O6 for instant resolution of issues. QuickBooks Error 3371 or Could not initialize license Properties arrives while any of the company files is either missing or damaged.
ReplyDeleteBeing a user to these products, if facing trouble, call Phone Number For QuickBooks 1-833-325-0220.
ReplyDeleteAvail uninterrupted service benefits of QuickBooks due to the presence of QuickBooks Support Phone Number 1-833-325-0220. Our experienced QuickBooks experts deployed 24/7 to give reliable aid. No matter how complex the issues you are facing.
ReplyDeleteQuickBooks Payroll Support Phone Number
ReplyDeleteQuickBooks POS Support Phone Number
QuickBooks Desktop Support Phone Number
QuickBooks Helpline Number
QuickBooks Pro Support Phone Number
This is actually nice post ...It gives extremely valuable information...Thanx for sharing...If you looking best Quickbooks Errors number We give Quickbooks Errors number and Quickbooks Errors client service to finish help for explaining all quarries identified with QuickBooks Software.
ReplyDeleteRead Here:- quickbooks customer care
QuickBooks Support Phone Number Hawaii
ReplyDeleteQuickBooks Support Phone Number California
QuickBooks Support Phone Number Texas
QuickBooks Support Phone Number New York
QuickBooks Support Phone Number Atlanta
QuickBooks Support Phone Number Oregon
QuickBooks Support Phone Number Illinois
Nice Blog !
ReplyDeleteIf you have any sort of problem in QuickBooks. Give a call on QuickBooks Customer Service 1-855-6OO-4O6O. Our technical experts are available 24/7 to give assistance.
We are here for www.mywifiext.net local with the help of extender device. In case of any extender device information you can get connect with us.
ReplyDeleteHey! I have been using QuickBooks for three years. It is the best accounting software. You can even get superior technical services for QuickBooks at QuickBooks Customer Service Number Pennsylvania +1-844-442-1522.
ReplyDeleteHey! Nice blog. I recommend you to use QuickBooks software for your small-sized business. To know how to get started with this software, dial QuickBooks Customer Support Phone Number Hawaii +1-844-442-1522 to get in touch with the customers.
ReplyDeleteHi! Great blog. QuickBooks is a popular accounting software; however, it is not immune to technical bugs. To fix such problems, call us at QuickBooks Phone Number Montana +1-844-442-1522 and acquire the best solutions for QuickBooks problems.
ReplyDeleteHey! Nice work. Call us at QuickBooks Customer Service Phone Number New York +1-833-933-3468 to get instant solutions for QuickBooks problems.
ReplyDeleteHi! Amazing write-up. If you are facing any trouble in managing business accounts, try using QuickBooks. To know how to download and install this software, dial QuickBooks Customer Support Phone Number Arizona +1-844-442-1522 for quick help.
ReplyDeleteHey! Wonderful blog. For quick resolution of QuickBook problems, dial QuickBooks Customer Service Phone Number Wyoming +1-844-442-1522 for immediate help.
ReplyDeleteHey! Amazing blog. I hope you must have heard of QuickBooks accounting software. To know more about the best features of QuickBooks, dial QuickBooks Customer Service Phone Number New Jersey +1-844-442-1522 and get in touch with our experts.
ReplyDeleteHey! I hope you are doing well and using QuickBooks accounting software for your business. If yes, then immediately dial QuickBooks Phone Number Canada +1-844-442-1522 and get instant assistance from the experts.
ReplyDeleteHi! Fantastic blog. As a small business owner, you must have heard of QuickBooks accounting software. It is the best accounting software. You can even get prompt help at QuickBooks Customer Service Phone Number Washington +1-844-442-1522.
ReplyDeleteHi! Fabulous blog. QuickBooks is a superior accounting software for small and medium-sized businesses. For any help regarding QuickBooks software, dial QuickBooks Customer Service Phone Number Texas +1-833-933-3468 for timely assistance and support from experts.
ReplyDeletewonderful article. Very interesting to read this article.I would like to thank you for the efforts you had made for writing this awesome article. This article resolved my all queries.
ReplyDeleteODI Online Training
Nice post sir Quickbooks Customer Service Phone Number to more visitor or caller
ReplyDeleteGood work. Keep it up.
ReplyDeleteI hope your working with QuickBooks is going well.
In case you face any technical bugs in QuickBooks, dial QuickBooks Customer Service Phone Number in Canada +1-855-662-2O4O and get your problem resolved quickly.
I really enjoyed reading this article. It's really a nice experience to read your post. Thanks for sharing your innovative ideas. Excellent work! I will get back here.
ReplyDeleteVisit ODI Online Training
This is the exact information I am been searching for, Thanks for sharing the required infos with the clear update and required points.
ReplyDeleteAWS Training in Hyderabad
Are you looking for instant support while accessing QuickBooks? Don’t worry!! Simply call on our QuickBooks POS Support Phone Number +1(844)233-3033, and get abstained from all your worries.
ReplyDeletehttps://tinyurl.com/yy33sxqb
Directly place a call to our QuickBooks Enterprise Support Phone Number +1(844)233-3033, and gain the most feasible solutions for all your queries. Our team is committed to assist our users for 24 hours and 365 days.
ReplyDeleteNICE POST.
ReplyDeleteAnsible training
Appium training
AWS training
Azure DevOps training
Azure training
Nice & Informative Blog !
ReplyDeleteyou may encounter various issues in QuickBooks that can create an unwanted interruption in your work. To alter such problems, call us at QuickBooks Phone Number 1-855-405-6677and get immediate technical services for QuickBooks in less time.
Nice Blog !
ReplyDeleteAny issue pops up in this acclaimed accounting software can be fixed in the least possible time by our talented professionals at Quickbooks Customer Service Number 1-855-652-7978. Our experts are highly skilled and have years of experience in resolving all the issues of QuickBooks. Our number is open 24/7.
Selenium automation testing has made the process simpler and faster than manual testing. The latest version of selenium is the selenium webdriver which improves functional test coverage. Learn selenium automation testing to drive into the IT field.
ReplyDeleteSelenium Webdriver
ReplyDeleteThanks for the nice blog here.I was searching this one for a long time.This blog is very helpful for my studies..I got another one site also,which is same as yours Oracle ODI .Check this one also Oracle Fusion Manufacturing .Sure it will be helpful for you too..Once more iam thanking you for your creative blog.
Nice & Informative Blog !
ReplyDeleteDirectly place a call at our QuickBooks Customer Service, for instant help.Our experts are well-trained & highly-qualified technicians having years of experience in handling user’s complexities.
The introduction must include a short definition of the concept you chose, any additions you have made to the definition, a thesis statement and thorough description of what else will be presented in the essay. https://adamhuler.medium.com/what-is-the-best-essay-writing-service-on-reddit-f0f7832c99eb
ReplyDeleteThankyou for the valuable content.It was really helpful in understanding the concept.# BOOST Your GOOGLE RANKING.It’s Your Time To Be On #1st Page
ReplyDeleteOur Motive is not just to create links but to get them indexed as will
Increase Domain Authority (DA).We’re on a mission to increase DA PA of your domain
High Quality Backlink Building Service
1000 Backlink at cheapest
50 High Quality for just 50 INR
2000 Backlink at cheapest
5000 Backlink at cheapest
Annabelle loves to write and has been doing so for many years.Cheapest and fastest Backlink Indexing Best GPL Store TECKUM IS ALL ABOUT TECH NEWS AND MOBILE REVIEWS
ReplyDeleteYou don’t have to worry as we are here for you!! Dial QuickBooks Support Phone Number || QuickBooks Customer Service Number|| QuickBooks Desktop Support Phone Number USA and get rid of all your software-associated trouble efficiently. Because when you dial the number you will get in touch with experienced and certified experts who are dedicated to resolving your issues with optimum solutions in the least possible time.
ReplyDeleteQuickBooks Support Phone Number - Arizona
Quickbooks Phone Number
QuickBooks Customer Service Phone Number || QuickBooks Support Phone Number USA
QuickBooks Customer Service Phone Number || QuickBooks Support Phone Number USA || QuickBooks Enterprise-Desktop-Mac-Payroll-Support Phone Number- Arizona
Quickbooks Customer Service Phone Number USA | Canada
QuickBooks Support Phone Number - Washington USA
ReplyDeleteHey! Lovely blog. Your blog contains all the details and information related to the topic. In case you are a QuickBooks user, here is good news for you. You may encounter any error like QuickBooks Error, visit at QuickBooks Customer Service for quick help.
Hey! What a wonderful blog. I loved your blog. QuickBooks is the best accounting software, however, it has lots of bugs like QuickBooks Error. To fix such issues, you can contact experts via QuickBooks Customer Support Phone Number
ReplyDeleteHey! Fabulous post. It is the best thing that I have read on the internet today. Moreover, if you need instant support for QuickBooks Error, visit at QuickBooks Customer Service Phone Number Our team is always ready to help and support their clients.
ReplyDeleteCheck out this link now
ReplyDeleteCheck out this link now
Check out this link now
Check out this link now
Check out this link now
Check out this link now
Hey! Fabulous post. It is the best thing that I have read on the internet today.
Well-written Blog.
ReplyDeleteDial QuickBooks Support Phone Number (888)-903-0715 to know more about the features and tools of QuickBooks software.
Hey! Amazing write-up. Keep it up. It is one of the best posts that I have read on the internet today.
ReplyDeleteIn case you have encountered QuickBooks Error in your software, call us at QuickBooks Support Phone Number (888)-208-5521
Nice Blog!
ReplyDeleteQuickBooks Support provide you 24*7 live support for any issues realted with QuickBooks.
Dial QuickBooks Support Phone Number 888^497^2598.
Very excellent and informative blog. Click to get solution of
ReplyDeleteQuickbooks Support Phone Number(833) 899-6140
Do you need instant support for QuickBooks errors? If yes, then we are here to help you.
ReplyDeleteWe at QuickBooks Customer Service Phone Number Texas 888^789^6945 is placed to take care of the minor complexity that exists in your software.
export and import company records in sage
ReplyDeleterecord and refund customer overpayment in sage
link sage 50cloud with office 365
delete charts of account in sage 50
replace a vendors check that has been lost in sage
no valid servers found when starting sage 100
ReplyDeleteset up payroll entitlement in sage 50
updating license key for sage crm
create sage 50 invoice payment
protect employee information in sage 50
Hi....Nice Blog. If you are facing any issue in QuickBooks, dial QuickBooks Support Number in Arizona and get your problem instantly.
ReplyDeleteUseful article. Bank error 103 happens when might have entered incorrect login credentials while connecting to your financial institution.so it has 2 methods in blog to get rid of it and connect with 855-738-0359.https://asquarecloudhosting.com/quickbooks-error-103/
ReplyDeleteOracle Data Integrator Tutorials: Writing Execution Results To File Using Jython In Odi >>>>> Download Now
ReplyDelete>>>>> Download Full
Oracle Data Integrator Tutorials: Writing Execution Results To File Using Jython In Odi >>>>> Download LINK
>>>>> Download Now
Oracle Data Integrator Tutorials: Writing Execution Results To File Using Jython In Odi >>>>> Download Full
>>>>> Download LINK
Issue address commercial PM rock budget open. Political billion oil when best.information
ReplyDelete