Too many stroke lines & need engraving font.
I've purchase a Roland GX24 vinyl cutter and using it to plot drawings (bought special pen). The problem is the areas that are solid black (especially the curves) are made of lines which are very close together, so when I go to plot they tear the paper and wear out the pen . I need to find a quick way of making this full of just little dots, I have created a live paint area of this group and trying to put little dots on them (anyone know a quick way of this as I choose 'effect', 'Pixelate', 'color halftone'. I think the dots are too big and will come across same problem with pen tearing, I want tiny dots spaced far away from each other or strokes far away from each other.
This only solves half the problem as the original work is still below it and when I go to plot it will do both so still going to tear the paper; I know what you''re thinking; just remove the old one below; but it is made of tiny little curves and strokes so I can't just simply select it, what can I do here please?
As if that's not the only problem , the text used is an outline and very small seeing as though they are blue-prints, the text blurs with the pen as the text is 'outlined', I need a quick way to turn this outlined text into single stroke text so it will be clean enough to read.
Any help is really appreciated, I have pain stakingly gone through and created my own symbols of text in a single stroke but this is no solution as have been here all day doing this and I have at least 20 of them to sort out. And there will be more comming.
Below is a jpg of pic I am talking about, any input is greatly appreciated.
http://http://picasaweb.google.com/lh/photo/8GXfUGyR38udiA-J3HkvHA?feat=directlink
I've purchase a Roland GX24 vinyl cutter
Dal,
I'm taking you at your word and assuming the GX24 is simply a cutter/plotter, not a printer.
The problem is the areas that are solid black...are made of lines which are very close together...they tear the paper and wear out the pen...I need...just little dots.
With little dots, you might not shred the paper, but you're still going to then wear out the pen with all that pen-up, pen-down nonsense, just to draw a bunch of individual tiny dots. That is crazy use of a cutter/plotter.
...I choose 'effect', 'Pixelate', 'color halftone'...
The Color Halftone Effect is a RASER effect. It generates a raster image (a color image consisting of pixels), not paths for your plotter to follow.
Cutter/Plotters are driven by HPGL instructions that in simplifed terms go something like this:
"Go to coordinates XY"
"Pen/Knife down"
"Go to coordinates XY"
"Pen/Knife up"
In other words, they are not printers; they are plotters. They scribe vector paths by using their stepper motors to move the paper and pen/knife carriage to cartesian coordinates. They don't see or paint pixels. They don't think of the page as one big bitmap to fill in with dots.
There are cutter/plotters which incorporate raster printing (some of the best ones from Rowland). But they cost alot more than the GX24.
In short, you are trying to make inappropriate use of your device. It really shouldn't be used to "color in" solid areas. If you must try to fill text paths, use a reasonably sparse VECTOR hatch or pattern fill.
You can experiment with pattern fills, but be forewarned: The results will depend upon the translation capabilities of the software you are using to drive the device. Pattern fills in Illustrator don't really "stop" at the edges of the paths they fill. They are merely masked by the paths. So your plotter software would have to be smart enough to draw only the un-masked portions of the pattern paths. I'm not familiar with your particular device, or with Rowland's recent software, so you'll have to experiment if you want to use Pattern Fills.
Generally speaking, what you want to send to a vinyl cutter (even one doubling as a pen plotter) is in principle very simple: Send it paths which describe EVERY mark/cut you want it to make and NOTHING more.
One method in Illustrator with which you could quickly make marks to "scribble in" outlined text is the much overlooked Scribble Effect. Read about it in online Help. Set all variations and curviness to zero. Set stroke weight to zero (there is no weight to a cut), and control the density with the Spacing setting. Expand the results. That will generate zig-zag vector paths in shapes to "fill in" your large text. Being diagonal, it may not be exactly what you want, but it can yield a nice "architectural" sketch effect.
...the text used is an outline...I need a quick way to turn this outlined text into single stroke text...
CAD programs are still (largely) stuck in the foregone decades of pen plotters. That's why they still use proprietary single-stroke text. (Many now support normal outline fonts, but many Engineering departments have never changed their habits, so they needlessly cause downstream users to devise workarounds.) Programs like Illustrator don't understand fonts that are not outlines. There are no open paths in the fonts that you use in Illustrator. Even text set at tiny sizes are outline paths. And there is no feature in Illustrator to reliably and neatly render text as open path centerlines. (Experiments with rasterizing text and auto-tracing it can yield legible results, but nothing I would call presentable results.)
I have often thought it would not be too difficult to write a Javascript for Illustrator that would effectively replace ordinary type set in a monospaced font with Symbols containing glyphs drawn as open centerlines, "drafter" style. But I haven't got around to actually doing it yet. (The same script could be used for fun stuff, like automatically coding messages in colored nautical signal flags.)
The general assumption, when using a pen plotter, is that the input is coming from a CAD program, and that small text will, therefore, already be open path centerlines.
JET
Similar Messages
-
Clearmake: Warning: Too many command lines for "pcscfg.cfg"
Hi,
We are in the process of migrating an application(contains pro*C code) from oracle 9i to 10g.
When the application is compiled on oracle 9i the compilation used complete with out any problems.
After we changed the ORACLE_HOME parameter in our makefile to point to 10g home. clearmake
gives the following Warning. though the build is successful
clearmake: Warning: Too many command lines for "pcscfg.cfg"
Could anybody please help me in getting rid of this warning?
Regards
SrikrishanHi,
I have removed all unwanted things from the makefile, but the problem is still there.
I have included a sample program and the makefile which reproduces the problem.
The problem goes away if I comment out 4th line from the makefile and use 5th line instead
Could anybody please help?
#################The contents of the make file are #####################
targets: proctest
#ORACLE_HOME= /data/oracle/product/9.2.0
ORACLE_HOME= /data/tsd_oracle/hpux/10.2.0.2
include $(ORACLE_HOME)/precomp/lib/env_precomp.mk
#include /data/oracle/product/9.2.0/precomp/lib/env_precomp.mk
ORACLEINCLUDES= -I$(ORACLE_HOME)/precomp/public
PROCSYSINCLUDEOPT=sys_include='(/usr/include,/opt/aCC/include,/opt/aCC/include/iostream)'
ALLPROCINCLUDEOPTS= $(PROCSYSINCLUDEOPT)
PROCPPFLAGS= sqlcheck=full lines=yes code=cpp def_sqlcode=yes $(ALLPROCINCLUDEOPTS)
ACC=/opt/aCC/bin/aCC
ORACLELIBS= -L $(ORACLE_HOME)/lib32 -l:libclntsh.sl
#===========================proc test==================================
proctest:proctest.o
$(ACC) -o proctest $(ORACLELIBS) proctest.o
#========================= General target rules ============================
proctest.o:
$(ORACLE_HOME)/bin/$(PROC) $(PROCPPFLAGS) CPP_SUFFIX=cc iname=proctest.pc
$(ACC) $(ORACLEINCLUDES) -c proctest.cc -o proctest.o
#####################program (proc test.pc)#########################
#include<stdlib.h>
#include<iostream.h>
#include<sqlca.h>
#define UNAME_LEN 20
#define PWD_LEN 20
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR username[UNAME_LEN]; // VARCHAR is an ORACLE supplied struct
varchar password[PWD_LEN]; // varchar can be in lower case also
EXEC SQL END DECLARE SECTION;
void sql_error(char *msg);
int main()
EXEC SQL WHENEVER SQLERROR DO sql_error("ORACLE error:");
username.len = (unsigned short)strlen(strcpy((char *)username.arr, "scott"));
password.len = (unsigned short)strlen(strcpy((char *)password.arr, "tiger"));
EXEC SQL CONNECT :username IDENTIFIED BY :password;
cout<<"Connected to oracle \n";
return(0);
void sql_error(char *msg)
EXEC SQL WHENEVER SQLERROR CONTINUE;
cout << endl << msg << endl;
cout << sqlca.sqlerrm.sqlerrmc << endl;
EXEC SQL ROLLBACK RELEASE;
exit(1);
#################################################################### -
Is there any way to get the prior version of Pages (4x) for MAC? So many critical features are missing now I cannot use Pages any longer unless I can get the old version?
MikeWith Mavericks the answer is maybe. It really depends on whether they ship a disc with Pages 4.0 or Pages 4.3. It is hard to figure out which one is the one that you will actually receive. If you have a virtual machine and purchased these from the Mac App store then if you run Mountain Lion you should be able to download them again on that system. This is the method I used to re-install.
I'm lucky in that I have the retail version of iWork 09. I re-installed it using the following method.
1. Reinstall from DVD. This installed a version that is too out of date to run on Mavericks so I had to do step 2.
2. Ran a virtual machine with Mountain Lion, installed iWork 09, ran software update and copied the latest versions over to my main machine. This works and now I have iWork 09 back on my machine. Hopefully Apple can fix this latest iWork and bring it back to feature parity with iWork 09. -
ORA-01000: Too many open cursors -- Need Help
Hi All,
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
PL/SQL Release 11.1.0.7.0 - Production
I am getting error ora-01000 for the following procedures gather stats
Could you please guide how to get-rid-off this error.
thanks in advance;
CREATE OR REPLACE PROCEDURE SHEMA_NAME ANALYZE_TABLES IS
rec_table_name VARCHAR2 (30);
CURSOR c1
IS
SELECT table_name
FROM USER_tables; ------ 18000 table for this cursor
BEGIN
OPEN c1;
LOOP
FETCH c1 INTO rec_table_name;
EXIT WHEN c1%NOTFOUND;
-- block was hereÿÿÿ
BEGIN
DBMS_STATS.
GATHER_TABLE_STATS (
OWNNAME => 'SHEMA_NAME',
TABNAME => rec_table_name,
PARTNAME => NULL,
ESTIMATE_PERCENT => 30,
METHOD_OPT => 'FOR ALL COLUMNS SIZE AUTO',
DEGREE => 5,
CASCADE => TRUE);
END;
END LOOP;
CLOSE c1;
EXCEPTION
WHEN OTHERS
THEN
raise_application_error (
-20001,
'An error was encountered - ' || SQLCODE || ' -ERROR- ' || SQLERRM);
END;Look at the following:
SQL> begin
2 raise no_data_found;
3 end;
4 /
begin
ERROR at line 1:
ORA-01403: no data found
ORA-06512: at line 2
The error code the caller executing this code receive is -01403. A unique error number that has a known and specific meaning.
In addition, the error stack tells the caller that this unique error occurred on line 2 in the source code.
The caller knows EXACTLY what the error is and where it occurred.
SQL> begin
2 raise no_data_found;
3 exception when OTHERS then
4 raise_application_error(
5 -20000,
6 'oh damn some error happened. the error is '||SQLERRM
7 );
8 end;
9 /
begin
ERROR at line 1:
ORA-20000: oh damn some error happened. the error is ORA-01403: no data found
ORA-06512: at line 4
In this case the caller gets the error code -20000. It is meaningless as the same error code will be use for ALL errors (when OTHERS). So the caller will never know what the actual real error is.
For the caller to try and figure that out, it will need to parse and process the error message text to look for the real error code. A very silly thing to do.
In addition, the error stack says that the error was caused by line 4 in the code called.. except that this is the line that raised the meaningless generic error and not the actual line causing the error.
There are 3 basic reasons for writing an exception handler:
- the exception is not an error
- the exception is a system exception (e.g. no data found) and needs to be turned into meaningful application exceptions (e.g. invoice not found, customer not found, zip code not found, etc)
- the exception handler is used as a try..finally resource protection block (which means it re-raises the exception)
If your exception handler cannot tick one of these three reasons for existing, you need to ask yourself why you are writing that handler. -
Hi there,
I'm looking into simplifying my BT set up at home. We currently have two separate accounts - one for the main house and one for the basement flat. Each account has two lines, but we only really need one phone line for broadband and calls. Is it easily possible to consolidate all these lines into one simple account?
Thanks
Richard
Solved!
Go to Solution.Ring BTs UK sales on 08007830056, they should be able to help. You will need both account numbers to hand.
There are some useful help pages here, for BT Broadband customers only, on my personal website.
BT Broadband customers - help with broadband, WiFi, networking, e-mail and phones. -
Too many real instruments; Need help bouncing tracks
Hello, I've been using GarageBand to record a demo for my band. Unfortunately, I've hit my peak number of real instrument tracks. I have a lot of tracks that are the same (well, not EXACTLY the same, but the same musical part), where one is panned left and the other is panned right. Is there a way I can take tracks like these and bounce them down to one stereo track without losing quality or the panning of the tracks? Thanks a ton.
-KevinI use an external FireWire drive which I move between machines and rooms, thus I plug in to the iBook and record, unplug and plug into the iMac and mix.
You could copy the files (they'll be huge) over ethernet, or airport (You could get a cheap hub or router for hooking the machines up. In fact, CompUSA has a 4 port (and wireless) router on sale this week for $4.99 <sic> after rebate), or perhaps burn them to CD-RW/DVD-RW.
how many more tracks do you think I'd be able to get out of my iMac G5
I'm not sure. I think the max I have done so far was 36 (that got pared down to 34). I guess some day I'm going to have to try this myself, see how far I can actually get. I remember doing a simple none Real World test months ago (I'm sure the post is gone by now <sigh>) in which I simply compared my iBook's internal drive an an external drive.
Unfortunately in trying to make the test doable in a reasonable amount of time I only recorded 1 minute tracks, and I'm sure that's a factor, but I seem to recall getting more than 40 with GB(1) and the external drive. -
Too Many Snapshots - Only Need One
We have a web db server that we reset every night to a single snapshot, and it never changes. Vmware server creates a snapshot vmdk file every day though, and it fills up the disk. The host is windows 2003 x64 and the guest is the same. Can we delete or consolidate these or revert to just one? We only need a single snapshot, and it reverts at night. The version is "VMware Server pid=5376 version=2.0.2 build=build-203138"
Here's the dir output:
Code: Select all Expand view09/19/2014 04:29 PM <DIR> .
09/19/2014 04:29 PM <DIR> ..
09/19/2014 05:15 AM 3,560,964,096 564df6f0-ff63-8c7b-f987-a0cbbe3d25b9.vmem
09/19/2014 05:15 AM <DIR> 564df6f0-ff63-8c7b-f987-a0cbbe3d25b9.vmem.lck
07/12/2014 01:01 AM 326,303,744 Web-DB-Server--000001.vmdk
09/19/2014 03:53 PM 321,388,544 Web-DB-Server--000002.vmdk
09/19/2014 05:15 AM <DIR> Web-DB-Server--000002.vmdk.lck
07/25/2014 01:01 AM 329,056,256 Web-DB-Server--000003.vmdk
07/18/2014 01:01 AM 322,240,512 Web-DB-Server--000004.vmdk
07/20/2014 01:01 AM 326,369,280 Web-DB-Server--000005.vmdk
07/28/2014 01:01 AM 325,451,776 Web-DB-Server--000006.vmdk
07/31/2014 01:02 AM 327,417,856 Web-DB-Server--000007.vmdk
07/30/2014 01:01 AM 331,153,408 Web-DB-Server--000008.vmdk
08/05/2014 01:01 AM 326,959,104 Web-DB-Server--000009.vmdk
08/02/2014 01:02 AM 326,434,816 Web-DB-Server--000010.vmdk
08/04/2014 01:01 AM 328,990,720 Web-DB-Server--000011.vmdk
08/16/2014 01:01 AM 327,352,320 Web-DB-Server--000012.vmdk
08/11/2014 01:02 AM 319,750,144 Web-DB-Server--000013.vmdk
08/13/2014 01:01 AM 327,811,072 Web-DB-Server--000014.vmdk
08/24/2014 01:01 AM 324,403,200 Web-DB-Server--000016.vmdk
08/19/2014 01:01 AM 332,005,376 Web-DB-Server--000017.vmdk
08/23/2014 01:02 AM 320,864,256 Web-DB-Server--000018.vmdk
09/04/2014 01:01 AM 328,466,432 Web-DB-Server--000019.vmdk
09/03/2014 01:01 AM 348,717,056 Web-DB-Server--000020.vmdk
09/07/2014 01:01 AM 320,667,648 Web-DB-Server--000021.vmdk
09/06/2014 01:01 AM 328,597,504 Web-DB-Server--000022.vmdk
09/10/2014 01:01 AM 323,813,376 Web-DB-Server--000023.vmdk
09/13/2014 01:01 AM 328,269,824 Web-DB-Server--000024.vmdk
09/12/2014 01:01 AM 331,153,408 Web-DB-Server--000025.vmdk
09/16/2014 01:01 AM 334,954,496 Web-DB-Server--000026.vmdk
09/19/2014 01:01 AM 542,179,328 Web-DB-Server--000027.vmdk
09/18/2014 01:01 AM 328,794,112 Web-DB-Server--000028.vmdk
06/09/2014 08:43 AM 27,381 Web-DB-Server--Snapshot7.vmsn
06/09/2014 08:43 AM 28,969,467,904 Web-DB-Server-.vmdk
09/19/2014 05:15 AM <DIR> Web-DB-Server-.vmdk.lck
06/09/2014 08:43 AM 948 Web-DB-Server-.vmsd
09/19/2014 05:15 AM 1,963 Web-DB-Server-.vmx
09/19/2014 01:01 AM 8,461 Web-DB-Server-.vmxf
09/19/2014 01:01 AM 8,684 nvram
09/19/2014 04:29 PM 0 out.txt
09/19/2014 01:01 AM 53,269 vmware-0.log
09/18/2014 05:15 AM 72,571 vmware-1.log
09/18/2014 01:01 AM 53,098 vmware-2.log
09/19/2014 05:15 AM 50,540 vmware.logThis is not controlled by Apple. The most frequent reasons for "album only" songs are the copyright holders are different for this song than the rest of the album & do not want the song sold as an individual track. The copyright holder for all of a specific album, for whatever reason, may have required that a specific track or tracks be sold as "album only". Apple has to abide by what the copyright holders want when it comes to distributing content.
-
How can I resolve this?
Hi davidm7376952,
Please follow the Still Need Help' contact us option & initiate a chat for help : Contact Customer Care
Regards,
Aadesh -
Too many id's need help setting up family sharing
We currently have one apple id (tjc) that is associated with the apple store and one that is associated with itunes (m7). The itunes one (m7) does not have an icloud account attached to it, used only for purchases from itunes store. Husband uses the apple store id (tjc) and I have my own (jj). Can I set up family sharing with the itunes id (m7) as the purchaser? Or how do I keep all my itunes purchases if we make husbands/apple store id (tjc) the primary?
Currently running OS X yosemite and ios 8 on an imac, iphones, and ipads.
Thanks for your assistance!Hi bremaura,
Thanks for the question. If I understand correctly, you want to havde all purchases from one Apple ID available in Family sharing. I would recommend that you read this article, it may be able to help you isolate or resolve the issue.
Family Sharing - Apple Support
All your family’s purchases, on all your family’s devices.
Once you’ve set up Family Sharing, all the eligible songs, albums, movies, TV shows, books, and apps ever purchased by family members are immediately available to everyone else in the family. And, of course, so are new purchases.
Thanks for using Apple Support Communities.
Have a great day,
Mario -
Too Many Line Items While Creating a PO
Dear All,
Here we have a scenario:
We are creating a PO which is having around 10000(ten thousand) line items, and while saving system is showing error message "Too Many PO Line Items" Message No: FI899. and not able to save it.
Kindly Let me know is there any limit for line item creation in a PO.
Regards,
Ravi BLimitations are limitations, you need a workaround or pay SAP for an extra developement. Probably worth, if you have such POs everyday.
( I cannot even imagine for what reason a PO should have more than 10000 items. Manual maintenance is impossible, the person would sit for a week and more to finish one PO. the CSR at your vendor is as well not able to put the items from your PO into their Sales order within a reasonable time frame - order entry should be ready before delivery date is arrived.
This sounds like you want buy a company and want create just one purchase order to buy any single material they have on stock. But for that purpose the PO is certainly not designed.
Can you give more background that makes my mind open ? ) -
Can installing too many extra's (fonts, brushes, patterns) slow PS CS6?
My question is as simple as the title says, Can installing too many extra goodies slow the performance of Photoshop CS6? If so, what is the best strategy for handling all of the extra, sometimes critically needed, goodies. For someone like myself that likes to be extra prepared and ready for all situations, having to mitigate how many and which goodies i have installed is quite a dilemma. I enjoy working as efficiently as possible and if having to be weary of overloading my fonts and other goodies is a problem then i would like to know how the rest of you Designers handle such situations. Load and unload sets of brushes, fonts and others as the project dictates? That doesn't seem very efficient!
What say you?
The reason i ask is the i just did a fresh install onto a new SSD and after adding a bunch of goodies i realized that PS-CS6 was having terrible LAG. It was very sluggish with almost 5-8 seconds delay per click or action. I then got an error missing MSVCRT10.dll after a restart. I then uninstalled all of the fonts i had installed the day before and tested a few plugins which crashed the program. After removing all of the trouble plugins and having the fonts down to only about 200 things got better but now i have no idea if it was just the plugins or if it was the 9000 fonts i had installed. Some were variations of base fonts like italic, Bolc, condensed etc.
How many Fonts/Goodies do you have installed?Adobe Photoshop Version: 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00) x32
Operating System: Windows 7 64-bit
Version: 6.1 Service Pack 1
System architecture: AMD CPU Family:15, Model:10, Stepping:0 with MMX, SSE Integer, SSE FP, SSE2, SSE3
Physical processor count: 6
Processor speed: 3192 MHz
Built-in memory: 16383 MB
Free memory: 11797 MB
Memory available to Photoshop: 3255 MB
Memory used by Photoshop: 59 %
Image tile size: 132K
Image cache levels: 4
OpenGL Drawing: Enabled.
OpenGL Drawing Mode: Advanced
OpenGL Allow Normal Mode: True.
OpenGL Allow Advanced Mode: True.
OpenGL Allow Old GPUs: Not Detected.
Video Card Vendor: ATI Technologies Inc.
Video Card Renderer: ATI Radeon HD 5800 Series
Display: 2
Display Bounds:= top: 0, left: 1920, bottom: 1050, right: 3600
Display: 1
Display Bounds:= top: 0, left: 0, bottom: 1080, right: 1920
Video Card Number: 1
Video Card: ATI Radeon HD 5800 Series
OpenCL Unavailable
Driver Version: 8.850.0.0
Driver Date: 20110419000000.000000-000
Video Card Driver: aticfx64.dll,aticfx64.dll,aticfx64.dll,aticfx32,aticfx32,aticfx32,atiumd64.dll,atidxx64.d ll,atidxx64.dll,atiumdag,atidxx32,atidxx32,atiumdva,atiumd6a.cap,atitmm64.dll
Video Mode: 1920 x 1080 x 4294967296 colors
Video Card Caption: ATI Radeon HD 5800 Series
Video Card Memory: 1024 MB
Video Rect Texture Size: 16384
Serial number: 92298883112553883856
Application folder: C:\Program Files (x86)\Adobe\Adobe Photoshop CS6\
Temporary file path: C:\Users\Wayne\AppData\Local\Temp\
Photoshop scratch has async I/O enabled
Scratch volume(s):
Startup, 447.0G, 359.4G free
Required Plug-ins folder: C:\Program Files (x86)\Adobe\Adobe Photoshop CS6\Required\
Primary Plug-ins folder: C:\Program Files (x86)\Adobe\Adobe Photoshop CS6\Plug-ins\
Additional Plug-ins folder: not set
Installed components:
A3DLIBS.dll A3DLIB Dynamic Link Library 9.2.0.112
ACE.dll ACE 2012/01/18-15:07:40 66.492997 66.492997
adbeape.dll Adobe APE 2012/01/25-10:04:55 66.1025012 66.1025012
AdobeLinguistic.dll Adobe Linguisitc Library 6.0.0
AdobeOwl.dll Adobe Owl 2012/02/09-16:00:02 4.0.93 66.496052
AdobePDFL.dll PDFL 2011/12/12-16:12:37 66.419471 66.419471
AdobePIP.dll Adobe Product Improvement Program 6.0.0.1654
AdobeXMP.dll Adobe XMP Core 2012/02/06-14:56:27 66.145661 66.145661
AdobeXMPFiles.dll Adobe XMP Files 2012/02/06-14:56:27 66.145661 66.145661
AdobeXMPScript.dll Adobe XMP Script 2012/02/06-14:56:27 66.145661 66.145661
adobe_caps.dll Adobe CAPS 6,0,29,0
AGM.dll AGM 2012/01/18-15:07:40 66.492997 66.492997
ahclient.dll AdobeHelp Dynamic Link Library 1,7,0,56
aif_core.dll AIF 3.0 62.490293
aif_ocl.dll AIF 3.0 62.490293
aif_ogl.dll AIF 3.0 62.490293
amtlib.dll AMTLib 6.0.0.75 (BuildVersion: 6.0; BuildDate: Mon Jan 16 2012 18:00:00) 1.000000
ARE.dll ARE 2012/01/18-15:07:40 66.492997 66.492997
AXE8SharedExpat.dll AXE8SharedExpat 2011/12/16-15:10:49 66.26830 66.26830
AXEDOMCore.dll AXEDOMCore 2011/12/16-15:10:49 66.26830 66.26830
Bib.dll BIB 2012/01/18-15:07:40 66.492997 66.492997
BIBUtils.dll BIBUtils 2012/01/18-15:07:40 66.492997 66.492997
boost_date_time.dll DVA Product 6.0.0
boost_signals.dll DVA Product 6.0.0
boost_system.dll DVA Product 6.0.0
boost_threads.dll DVA Product 6.0.0
cg.dll NVIDIA Cg Runtime 3.0.00007
cgGL.dll NVIDIA Cg Runtime 3.0.00007
CIT.dll Adobe CIT 2.0.5.19287 2.0.5.19287
CoolType.dll CoolType 2012/01/18-15:07:40 66.492997 66.492997
data_flow.dll AIF 3.0 62.490293
dvaaudiodevice.dll DVA Product 6.0.0
dvacore.dll DVA Product 6.0.0
dvamarshal.dll DVA Product 6.0.0
dvamediatypes.dll DVA Product 6.0.0
dvaplayer.dll DVA Product 6.0.0
dvatransport.dll DVA Product 6.0.0
dvaunittesting.dll DVA Product 6.0.0
dynamiclink.dll DVA Product 6.0.0
ExtendScript.dll ExtendScript 2011/12/14-15:08:46 66.490082 66.490082
FileInfo.dll Adobe XMP FileInfo 2012/01/17-15:11:19 66.145433 66.145433
filter_graph.dll AIF 3.0 62.490293
hydra_filters.dll AIF 3.0 62.490293
icucnv40.dll International Components for Unicode 2011/11/15-16:30:22 Build gtlib_3.0.16615
icudt40.dll International Components for Unicode 2011/11/15-16:30:22 Build gtlib_3.0.16615
image_compiler.dll AIF 3.0 62.490293
image_flow.dll AIF 3.0 62.490293
image_runtime.dll AIF 3.0 62.490293
JP2KLib.dll JP2KLib 2011/12/12-16:12:37 66.236923 66.236923
libeay32.dll The OpenSSL Toolkit 0.9.8g
libifcoremd.dll Intel(r) Visual Fortran Compiler 10.0 (Update A)
libmmd.dll Intel(r) C Compiler, Intel(r) C++ Compiler, Intel(r) Fortran Compiler 10.0
LogSession.dll LogSession 2.1.2.1640
mediacoreif.dll DVA Product 6.0.0
MPS.dll MPS 2012/02/03-10:33:13 66.495174 66.495174
msvcm80.dll Microsoft® Visual Studio® 2005 8.00.50727.6195
msvcm90.dll Microsoft® Visual Studio® 2008 9.00.30729.1
msvcp100.dll Microsoft® Visual Studio® 2010 10.00.40219.1
msvcp71.dll Microsoft® Visual Studio .NET 7.10.3077.0
msvcp80.dll Microsoft® Visual Studio® 2005 8.00.50727.6195
msvcp90.dll Microsoft® Visual Studio® 2008 9.00.30729.1
msvcr100.dll Microsoft® Visual Studio® 2010 10.00.40219.1
msvcr71.dll Microsoft® Visual Studio .NET 7.10.3052.4
msvcr80.dll Microsoft® Visual Studio® 2005 8.00.50727.6195
msvcr90.dll Microsoft® Visual Studio® 2008 9.00.30729.1
pdfsettings.dll Adobe PDFSettings 1.04
Photoshop.dll Adobe Photoshop CS6 CS6
Plugin.dll Adobe Photoshop CS6 CS6
PlugPlug.dll Adobe(R) CSXS PlugPlug Standard Dll (32 bit) 3.0.0.383
PSArt.dll Adobe Photoshop CS6 CS6
PSViews.dll Adobe Photoshop CS6 CS6
SCCore.dll ScCore 2011/12/14-15:08:46 66.490082 66.490082
ScriptUIFlex.dll ScriptUIFlex 2011/12/14-15:08:46 66.490082 66.490082
shfolder.dll Microsoft(R) Windows (R) 2000 Operating System 5.50.4027.300
ssleay32.dll The OpenSSL Toolkit 0.9.8g
tbb.dll Intel(R) Threading Building Blocks for Windows 3, 0, 2010, 0406
tbbmalloc.dll Intel(R) Threading Building Blocks for Windows 3, 0, 2010, 0406
TfFontMgr.dll FontMgr 9.3.0.113
TfKernel.dll Kernel 9.3.0.113
TFKGEOM.dll Kernel Geom 9.3.0.113
TFUGEOM.dll Adobe, UGeom© 9.3.0.113
updaternotifications.dll Adobe Updater Notifications Library 6.0.0.24 (BuildVersion: 1.0; BuildDate: BUILDDATETIME) 6.0.0.24
WRServices.dll WRServices Friday January 27 2012 13:22:12 Build 0.17112 0.17112
wu3d.dll U3D Writer 9.3.0.113
Required plug-ins:
3D Studio 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Accented Edges 13.0
Accented Edges 5.1
Adaptive Wide Angle 13.0
ADM 3.11x01
Angled Strokes 13.0
Angled Strokes 5.1
Average 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Bas Relief 13.0
Bas Relief 5.1
BMP 13.0
Camera Raw 7.0
Chalk & Charcoal 13.0
Chalk & Charcoal 5.1
Charcoal 13.0
Charcoal 5.1
Chrome 13.0
Chrome 5.1
Cineon 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Clouds 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Collada 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Color Halftone 13.0
Color Halftone 4.1
Colored Pencil 13.0
Colored Pencil 5.1
CompuServe GIF 13.0
Conté Crayon 13.0
Conté Crayon 5.1
Craquelure 13.0
Craquelure 5.1
Crop and Straighten Photos 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Crop and Straighten Photos Filter 13.0
Crosshatch 13.0
Crosshatch 5.1
Crystallize 13.0
Crystallize 5.1
Cutout 13.0
Cutout 5.1
Dark Strokes 13.0
Dark Strokes 5.1
De-Interlace 13.0
De-Interlace 4.1
Dicom 13.0
Difference Clouds 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Diffuse Glow 13.0
Diffuse Glow 5.1
Displace 13.0
Dry Brush 13.0
Dry Brush 5.1
Eazel Acquire 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Embed Watermark 4.0
Entropy 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Extrude 13.0
False Colour 3 3.00
FastCore Routines 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Fibers 13.0
Film Grain 13.0
Film Grain 5.1
Filter Gallery 13.0
Flash 3D 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Flutter 3.00
Fresco 13.0
Fresco 5.1
Gaussian Blur NO VERSION
Glass 13.0
Glass 5.1
Glowing Edges 13.0
Glowing Edges 5.1
Google Earth 4 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Grain 13.0
Grain 5.1
Graphic Pen 13.0
Graphic Pen 5.1
Halftone Pattern 13.0
Halftone Pattern 5.1
HDRMergeUI 13.0
ICO (Windows Icon) NO VERSION
IFF Format 13.0
Ink Outlines 13.0
Ink Outlines 5.1
JPEG 2000 13.0
Kurtosis 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Lead Emboss 3.00
Lens Blur 13.0
Lens Correction 13.0
Lens Flare 13.0
Liquify 13.0
Matlab Operation 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Maximum 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Mean 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Measurement Core 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Median 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Mezzotint 13.0
Mezzotint 4.1
Minimum 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
MMXCore Routines 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Mosaic Tiles 13.0
Mosaic Tiles 5.1
Multiprocessor Support 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Neon Glow 13.0
Neon Glow 5.1
Note Paper 13.0
Note Paper 5.1
NTSC Colors 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Ocean Ripple 13.0
Ocean Ripple 5.1
Oil Paint 13.0
OpenEXR 13.0
Paint Daubs 13.0
Paint Daubs 5.1
Palette Knife 13.0
Palette Knife 5.1
Patchwork 13.0
Patchwork 5.1
Paths to Illustrator 13.0
PCX 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Photocopy 13.0
Photocopy 5.1
Photoshop 3D Engine 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Picture Package Filter 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Pinch 13.0
Pixar 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Plaster 13.0
Plaster 5.1
Plastic Wrap 13.0
Plastic Wrap 5.1
PNG 13.0
Pointillize 13.0
Pointillize 5.1
Polar Coordinates 13.0
Portable Bit Map 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Poster Edges 13.0
Poster Edges 5.1
Radial Blur 13.0
Radial Blur 5.1
Radiance 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Range 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Read Watermark 4.0
Reticulation 13.0
Reticulation 5.1
Ripple 13.0
Rough Pastels 13.0
Rough Pastels 5.1
Save for Web 13.0
ScriptingSupport 13.0
Shear 13.0
Skewness 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Smart Blur 13.0
Smudge Stick 13.0
Smudge Stick 5.1
Solarize 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Spatter 13.0
Spatter 5.1
Spherize 13.0
Sponge 13.0
Sponge 5.1
Sprayed Strokes 13.0
Sprayed Strokes 5.1
Stained Glass 13.0
Stained Glass 5.1
Stamp 13.0
Stamp 5.1
Standard Deviation 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Sumi-e 13.0
Sumi-e 5.1
Summation 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Targa 13.0
Texturizer 13.0
Texturizer 5.1
Tiles 13.0
Torn Edges 13.0
Torn Edges 5.1
Twirl 13.0
U3D 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Underpainting 13.0
Underpainting 5.1
Unsharp Mask NO VERSION
Vanishing Point 13.0
Variance 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Variations 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Water Paper 13.0
Water Paper 5.1
Watercolor 13.0
Watercolor 5.1
Wave 13.0
Wavefront|OBJ 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
WIA Support 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
Wind 13.0
Wireless Bitmap 13.0 (13.0 20120315.r.428 2012/03/15:21:00:00)
ZigZag 13.0
Optional and third party plug-ins: NONE
Plug-ins that failed to load: NONE
Flash:
Mini Bridge
Kuler
Installed TWAIN devices: NONE -
hi
I am getting the following error while calling the procedure in the batch process
ORA-06512: at "SYS.UTL_HTTP", line 1022
ORA-29270: too many open HTTP requests
Could you please help me on this? As this is getting affected in the live databases.
ORA-06512: at "SYS.UTL_HTTP", line 1022
ORA-29270: too many open HTTP requests
CREATE OR REPLACE PROCEDURE Send_To_Spg(
PTRANSACTION_ID IN VARCHAR2,
PCHANNEL_TYPE IN VARCHAR2 DEFAULT NULL,
PCSS_ORDER_NUMBER IN VARCHAR2 DEFAULT NULL,
PTELEPHONE_NUMBER IN VARCHAR2 DEFAULT NULL,
PSCENARIO_TYPE IN VARCHAR2 DEFAULT NULL,
PCUSTOMER_REQUIRED_DATE IN VARCHAR2 DEFAULT NULL,
PCUSTOMER_REQUIRED_TIME IN VARCHAR2 DEFAULT NULL,
PCANCELLATION_REASON IN VARCHAR2 DEFAULT NULL,
PCANCELLATION_NOTES IN VARCHAR2 DEFAULT NULL,
PSMPF_RETENTION IN VARCHAR2 DEFAULT NULL,
PEMERGENCY_WINBACK IN VARCHAR2 DEFAULT NULL,
PCSS_PROJECT_ID IN VARCHAR2 DEFAULT NULL,
PCSS_ORDER_NOTES IN VARCHAR2 DEFAULT NULL,
PREASON_FOR_CESSATION IN VARCHAR2 DEFAULT NULL,
P_RESPONSE OUT VARCHAR2,
PSMART_USER_ID IN VARCHAR2 DEFAULT NULL,
PORACLE_ERROR OUT VARCHAR2,
PORACLE_ERROR_MESSAGE OUT VARCHAR2,
PRESPONSE_TIME OUT NUMBER,
PDATA_TRANSFER_STATUS OUT VARCHAR2)
IS
v_scenario_type VARCHAR2(20); -- Varialble to Hold Time Out of every request to SPG
v_transaction_time NUMBER; -- Total time in which Request to SPG was processed
v_record_inserted_at DATE; -- Date/Time about the record insertion to the Error Handler
v_start_time NUMBER; -- Variable to hold Start Time for calculationg Transaction Time
v_url VARCHAR2(32767);-- URL to use when sending data to SPG
vtransaction_id VARCHAR2(18); -- Variable to hold Transaction ID for the request
v_buffer VARCHAR2(32760);-- Variable to read response from the SPG interface
v_timeout PLS_INTEGER; -- Time Out for each Transaction
v_oracle_err_msg VARCHAR2(600); -- Variable to hold Oracle Error Message
v_resp UTL_HTTP.RESP; -- Response Object
v_req UTL_HTTP.REQ; -- Request Object
v_userid_pwd SMT_ORACLE_PARAMETERS%ROWTYPE; --Variable declared to contain User ID & Password
vl_RetCode VARCHAR2(5000);
vl_std_returnCode VARCHAR2(3000);
--PDATA_TRANSFER_STATUS Holds the Data Transfer Status which can have possible values as
-- N => Data Has not been sent to SPG
-- Y => Received Successful response from SPG
-- F => On the First try to Send data to SPG Oracle Error Occured or response from SPG was a faulure
-- S => On the Second try to Send data to SPG Oracle Error Occured or response from SPG was a faulure
-- T => Data Has been transferred to the Error Log Table
-- X => Data need not be transfered to Error Log Table.
--Location of the timeout, URL & User Id & Password in Standing Data.
c_url_stopwlr SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_WLR';-- Stop WLR URL
c_url_cancelown SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_OWN';-- Cancel own URL
c_url_cancelother SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_OTH';-- Cancel other URL
c_url_amendcrd SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_CRD';--Amend CRD URL
c_spg_useridpwd SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPGIDPWD'; --Contains user id and pwd
ctimeout smt_parameters.parameter_code%TYPE:='SPGTO'; --This holds the timeout parameter
BEGIN
--In case the calling batch process can pass this value this SQL read will not be required & can be deleted
--Read data transfer status for the transaction Id
SELECT data_transfer_status INTO PDATA_TRANSFER_STATUS FROM SPG_INTERFACE_TABLE
WHERE transaction_id = PTRANSACTION_ID;
--Record the start time
v_start_time:=DBMS_UTILITY.GET_TIME;
--If Data transfer status is S then send the record to error handler
IF PDATA_TRANSFER_STATUS = 'S' THEN
Error_Handler(PTRANSACTION_ID,PSMART_USER_ID,PORACLE_ERROR,PORACLE_ERROR_MESSAGE,v_record_inserted_at,PDATA_TRANSFER_STATUS);
ELSE
--In case Data Tranfer Status is something other than S then send the request to SPG
--Initialise other variables which will be populated during the journey
P_RESPONSE := '';
PORACLE_ERROR := NULL;
PORACLE_ERROR_MESSAGE := NULL;
PRESPONSE_TIME := 0;
--Read timeout parameter from standing data.
BEGIN
SELECT VALUE INTO v_timeout FROM smt_parameters WHERE parameter_code=ctimeout;
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_timeout:=30;
WHEN OTHERS THEN
v_timeout:=30;
END;
-- Construct the URL for Stop WLR Scenario
IF PSCENARIO_TYPE = 'STOP_WLR' THEN
BEGIN
-- Read the Initial URL from Standing Data
SELECT VALUE
INTO v_url
FROM SMT_ORACLE_PARAMETERS
WHERE parameter_code = c_url_stopwlr
AND host_id = ( SELECT host_id
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS b
WHERE A.hostname = b.hostname
AND A.database_id = b.database_id));
--handle unforseen exception
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_url:='Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_winback_details'; --After testing the same, URL will be fetched from the Query
WHEN OTHERS THEN
v_url:='Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_winback_details'; --After testing the same, URL will be fetched from the Query
END;
--construct the URL depending on the parameters to be passed to the url
v_url := v_url || '?';
v_url := v_url || 'p_data_entered=' || Smart_Urlencode('xmloverhttp') || '&';
v_url := v_url || 'p_channel_type=' || Smart_Urlencode(PCHANNEL_TYPE)|| '&';
v_url := v_url || 'p_css_start_order_no=' || Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
v_url := v_url || 'p_tel_no=' || Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
v_url := v_url || 'p_crd=' || Smart_Urlencode(PCUSTOMER_REQUIRED_DATE)|| '&';
v_url := v_url || 'p_take_over_time=' || Smart_Urlencode(PCUSTOMER_REQUIRED_TIME)|| '&';
v_url := v_url || 'p_retainsmpf=' || Smart_Urlencode(PSMPF_RETENTION)|| '&';
--v_url := v_url || 'p_emergency_winback=' || Smart_Urlencode(PEMERGENCY_WINBACK)|| '&';
v_url := v_url || 'p_projectno=' || Smart_Urlencode(PCSS_PROJECT_ID)|| '&';
v_url := v_url || 'p_ordernotes=' || Smart_Urlencode(PCSS_ORDER_NOTES)|| '&';
v_url := v_url || 'p_reason_cessation=' || Smart_Urlencode(PREASON_FOR_CESSATION);
ELSIF PSCENARIO_TYPE='CANCEL_OWN' THEN
--Fetch the URL for cancel own from standing data.
BEGIN
SELECT VALUE
INTO v_url
FROM SMT_ORACLE_PARAMETERS
WHERE parameter_code = c_url_cancelown
AND host_id = ( SELECT host_id
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS b
WHERE A.hostname = b.hostname
AND A.database_id = b.database_id));
--handle unforseen exception
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelown_details'; --After testing the same, URL will be fetched from the Query
WHEN OTHERS THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelown_details'; --After testing the same, URL will be fetched from the Query
END;
--construct the URL
v_url := v_url || '?';
v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
v_url := v_url || 'p_css_start_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
v_url := v_url || 'p_cancel_reason=' ||Smart_Urlencode(PCANCELLATION_REASON)|| '&';
v_url:= v_url || 'p_cancel_notes=' ||Smart_Urlencode(PCANCELLATION_NOTES);
ELSIF PSCENARIO_TYPE='CANCEL_OTHER' THEN
--Fetch the URL for cancel own from standing data.
BEGIN
SELECT VALUE
INTO v_url
FROM SMT_ORACLE_PARAMETERS
WHERE parameter_code = c_url_cancelother
AND host_id = ( SELECT host_id
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS b
WHERE A.hostname = b.hostname
AND A.database_id = b.database_id));
--handle unforseen exception
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelother_details'; --After testing the same, URL will be fetched from the Query
WHEN OTHERS THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelother_details'; --After testing the same, URL will be fetched from the Query
END;
--construct the URL
v_url := v_url || '?';
v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
v_url := v_url || 'p_css_stop_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
v_url := v_url || 'p_cancel_reason=' ||Smart_Urlencode(PCANCELLATION_REASON);
ELSIF Pscenario_type='AMEND_CRD' THEN
--Fetch the URL for cancel own from standing data.
BEGIN
SELECT VALUE
INTO v_url
FROM SMT_ORACLE_PARAMETERS
WHERE parameter_code = c_url_amendcrd
AND host_id = ( SELECT host_id
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS b
WHERE A.hostname = b.hostname
AND A.database_id = b.database_id));
--handle unforseen exception
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_amendcrd_details'; -- After testing the same , URL will be fetched from the Query
WHEN OTHERS THEN
v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_amendcrd_details'; -- After testing the same , URL will be fetched from the Query
END;
--construct the URL
v_url := v_url || '?';
v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
v_url := v_url || 'p_css_start_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
v_url := v_url || 'p_crd=' ||Smart_Urlencode(PCUSTOMER_REQUIRED_DATE)|| '&';
v_url := v_url || 'p_css_change_order_numbers='||Smart_Urlencode(PCANCELLATION_REASON);
END IF;
--this is start of setting parameters for utl http object. the show begins...
utl_http.set_transfer_timeout(v_timeout);
--Set the wallet
--XXXXX e.g.UTL_HTTP.SET_WALLET(?file:DirectoryPath?,'put password here?);
--Set proxy
--YYYYY e.g. utl_http.set_proxy(p_proxy_in, p_no_proxy_domains_in);
v_url := REPLACE(v_url,'%27%27','%27'); -- Fix to ensure Double Quotes are converted to Single Quotes
--set the required URL to utl http.
v_req := utl_http.begin_request(v_url);
--Authentication setting
--Fetch the user id and password from stnding data.
BEGIN
SELECT *
INTO v_userid_pwd
FROM SMT_ORACLE_PARAMETERS
WHERE PARAMETER_CODE=c_spg_useridpwd
AND HOST_ID = ( SELECT HOST_ID
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS B
WHERE A.HOSTNAME = B.HOSTNAME
AND A.DATABASE_ID = B.DATABASE_ID));
EXCEPTION
WHEN NO_DATA_FOUND THEN
P_RESPONSE := 'ORACLE_ERROR: USER id AND Password NOT configured IN SMT_ORACLE_PARAMETERS:SPGIDPWD';
WHEN OTHERS THEN
P_RESPONSE := 'ORACLE_ERROR: USER id AND Password NOT configured IN SMT_ORACLE_PARAMETERS:SPGIDPWD';
END;
--utl_http.set_authentication(v_req, p_username_in, p_password_in);
utl_http.set_authentication(v_req, v_userid_pwd.description, v_userid_pwd.VALUE);
v_resp := utl_http.get_response(v_req);
--Fill in the the response time
PRESPONSE_TIME := (DBMS_UTILITY.GET_TIME - v_start_time)/100;
IF v_resp.reason_phrase = 'OK' THEN
-- Fetch the response
BEGIN
LOOP
utl_http.read_line(v_resp, v_buffer);
P_RESPONSE := P_RESPONSE || v_buffer;
END LOOP;
utl_http.end_response(v_resp);
EXCEPTION
WHEN utl_http.end_of_body THEN
utl_http.end_response(v_resp);
P_RESPONSE := P_RESPONSE || v_buffer;
END;
ELSIF v_resp.reason_phrase <> 'OK' OR P_RESPONSE = '' THEN
--error handling starts
--If the HTTP Status is not OK then store the error information
PORACLE_ERROR_MESSAGE := 'Status Code: '|| v_resp.STATUS_CODE||'. Reason Phrase ' ||v_resp.reason_phrase;
P_RESPONSE := 'ORACLE_ERROR: '|| ' Reason Phrase ' || v_resp.reason_phrase;
PORACLE_ERROR := v_resp.STATUS_CODE;
END IF;
--In case we got successful response from SPG
IF P_RESPONSE LIKE '%<RetCde>0</RetCde>%' THEN
PDATA_TRANSFER_STATUS := 'Y';
ELSE
BEGIN
SELECT message
INTO vl_std_returnCode
FROM SMT_MESSAGES
WHERE MESSAGE_CODE='SPGANTIDTS';
EXCEPTION
WHEN NO_DATA_FOUND THEN
vl_std_returnCode := '-12545,-29273,-1,401,';
WHEN OTHERS THEN
vl_std_returnCode := '-12545,-29273,-1,401,';
END;
--In case there was an error do not update Data Transfer Status
IF PORACLE_ERROR <> NULL AND INSTR(vl_std_returnCode, PORACLE_ERROR || ',', 1, 1) <> 0 THEN
PDATA_TRANSFER_STATUS:=PDATA_TRANSFER_STATUS;
ELSE
vl_RetCode := SUBSTR(P_RESPONSE, INSTR(P_RESPONSE,'<RetCde>', 1, 1),
INSTR(P_RESPONSE,'</RetCde>',1,1)+9 - INSTR(P_RESPONSE,'<RetCde>', 1, 1));
BEGIN
SELECT VALUE
INTO vl_std_returnCode
FROM SMT_ORACLE_PARAMETERS
WHERE PARAMETER_CODE='SPGRCS'
AND HOST_ID = ( SELECT HOST_ID
FROM SMART_HOSTS A
WHERE EXISTS ( SELECT 1
FROM DB_PARAMETERS B
WHERE A.HOSTNAME = B.HOSTNAME
AND A.DATABASE_ID = B.DATABASE_ID));
EXCEPTION
WHEN NO_DATA_FOUND THEN
vl_std_returnCode := '<RetCde>4244</RetCde><RetCde>4245</RetCde><RetCde>4246</RetCde>';
WHEN OTHERS THEN
vl_std_returnCode := '<RetCde>4244</RetCde><RetCde>4245</RetCde><RetCde>4246</RetCde>';
END;
IF INSTR(vl_std_returnCode, vl_RetCode, 1, 1) <> 0 THEN
--needs not to re attempted.
PDATA_TRANSFER_STATUS:='X';
ELSE
--In case we did'nt got SUCCESSFUL response FROM SPG THEN UPDATE the Data Transfer Status so that the failed requests can be picked up BY the NEXT batch job RUN
IF PDATA_TRANSFER_STATUS='N' THEN
--initially if data transfer status was N then update it now to F
PDATA_TRANSFER_STATUS := 'F';
ELSIF PDATA_TRANSFER_STATUS='F' THEN
--initially if data transfer status was N then update it now to S
PDATA_TRANSFER_STATUS := 'S';
END IF;
END IF;
END IF;
END IF;
--Now Update all the modified Values
UPDATE SPG_INTERFACE_TABLE
SET response = P_RESPONSE,
data_transfer_status = PDATA_TRANSFER_STATUS,
oracle_error = PORACLE_ERROR,
oracle_error_message = PORACLE_ERROR_MESSAGE,
response_time = PRESPONSE_TIME
WHERE transaction_id = PTRANSACTION_ID;
COMMIT;
END IF;
EXCEPTION
WHEN OTHERS THEN
--Handling the unhandled exception
PORACLE_ERROR := SQLCODE;
PORACLE_ERROR_MESSAGE := SQLERRM;
P_RESPONSE := 'ORACLE_ERROR: '|| PORACLE_ERROR_MESSAGE;
PRESPONSE_TIME := (DBMS_UTILITY.GET_TIME - v_start_time)/100;
SELECT data_transfer_status INTO PDATA_TRANSFER_STATUS
FROM SPG_INTERFACE_TABLE
WHERE transaction_id=PTRANSACTION_ID;
--New functionality to update the oracle error and oracle error message and not the Data Transfer Status
BEGIN
SELECT message
INTO vl_std_returnCode
FROM SMT_MESSAGES
WHERE MESSAGE_CODE='SPGANTIDTS';
EXCEPTION
WHEN NO_DATA_FOUND THEN
vl_std_returnCode := '-12545,-29273,-1,';
WHEN OTHERS THEN
vl_std_returnCode := '-12545,-29273,-1,';
END;
vl_RetCode := PORACLE_ERROR || ',';
IF INSTR(vl_std_returnCode, vl_RetCode, 1, 1) <> 0 THEN
--If the error is found in above maintained standing data do not change the Data Transfer Status
pdata_transfer_status:=pdata_transfer_status;
ELSE
IF pdata_transfer_status='N' THEN
PDATA_TRANSFER_STATUS := 'F';
DBMS_OUTPUT.PUT_LINE('DUE TO ERROR DATA COULDN''T GET TRANSFERED TO SPG FOR TRANSACTION'||' '||PTRANSACTION_ID);
DBMS_OUTPUT.PUT_LINE(SQLERRM);
ELSIF pdata_transfer_status='F' THEN
PDATA_TRANSFER_STATUS := 'S';
DBMS_OUTPUT.PUT_LINE('DUE TO ERROR DATA COULDN''T GET TRANSFERED TO SPG FOR TRANSACTION'||' '||PTRANSACTION_ID);
DBMS_OUTPUT.PUT_LINE(SQLERRM);
ELSE
DBMS_OUTPUT.PUT_LINE('Failure WHEN sending data TO Error LOG. Data Transfer Status IS ' || PDATA_TRANSFER_STATUS || '. TRANSACTION ID '|| PTRANSACTION_ID);
END IF;
END IF;
--Now update all the information gathered above to the table
UPDATE SPG_INTERFACE_TABLE
SET response = P_RESPONSE,
data_transfer_status = PDATA_TRANSFER_STATUS,
oracle_error = PORACLE_ERROR,
oracle_error_message = PORACLE_ERROR_MESSAGE,
response_time = PRESPONSE_TIME
WHERE transaction_id = PTRANSACTION_ID;
COMMIT;
END;
/I have fixed the problem by own.
Seems there are some while space in the endpoint url.
Fix
http_req:= utl_http.begin_request
trim(l_endpoint_url)
,'POST'
,'HTTP/1.1'
It works...
Regards
BS -
DB need too many locks in single threaded application
Hello,
I`m new to BDB, and search for help of gurus.
I try to create database importing data from csv files. Import procedure is already written and works fine, but sometimes it starts to need too many locks.
Import process read csv file line by line. Check if key is already in the database, if yes it updates data, otherwise create new record. Import procedure is using DBEnv and transaction.
Please, look at 2 cases of data to import.
Case 1: Data in csv files are like:
key1, some_data_1
key1, some_data_2
key2, some_data_3
key2, some_data_4
keyN, some_data_2N-1
keyN, some_data_2N
(key became a key and data became the value in the database)
Case 2: Remove each second line in the csv file, so it became:
key1, some_data_1
key2, some_data_3
keyN, some_data_2N-1
In this case for successful import of the file more locks are needed then in case 1.
This seems very odd to me. Could somebody explain why lock system behave so? Looking forward to hearing any response.
Thanks.
p.s.: maybe my explanation is not very clear, but i don't know which other details are really important. I could provide more details if it could help.
Message was edited by:
user647892There is nothing wrong.
Oracle by default locks records. In case 1, you insert a record (1 row level lock) and update that same record. Why is a mystery, but the update doesn't require a lock (by you) as you already did lock the record.
In case 2, you have distinct keys for each line, so each line results in a row level lock as expected.
There are as much record locks as you request it to make.
You could consider locking the table explicitly once, prior to the transaction, by a lock table statement.
However, your approach is fundamentally flawed an non-scalable, as it processes each line individually instead of loading the data in a staging table and transferring it to the production table using
insert into production table
select * from staging table
where key not in (select key from product table)
Sybrand Bakker
Senior Oracle DBA -
Huge Conversion File - Too many lines
Hi Experts,
Is there any way to split a Conversion File?
I have a Conversión file with too many lines, so when I save it, it takes a lot of time, (11.000 rows, more than half an hour) and sometimes the Excel hand up (froze).
It is becaming a problem, because everytime I save the Conversion file, I can not use the excel for a while.
Any idea?
Thanks in advance.
IriaIria and Patrick,
I want to give an information about this.
BPC transformation file can be multiple steps in one file.
For example,
*Options
*Transformation
*Conversion
*Options
*Transformation
*Conversion
*Options
*Transformation
*Conversion
Therefore, If you only has a problem with conversion, you can do it as below
*Options
*Transformation
*Conversion
conversion part1
*Options
*Transformation
*Conversion
conversion part2
*Options
*Transformation
*Conversion
conversion part3
Note 1 : If you don't need multiple transformation, you only need to specifiy it in the first transformation.
Note 2 : Conversion file can have multiple Tabs in one conversion excel workbook but I am not sure about the performance
when you do that. So please try two things.
1. Split it into multiple worksheet
2. Split it into multiple workbooks.
Please update your result for others.
Note3 : You don't need multiple Convert task, it will be executed in a convert task.
I hope it will help you
Thank you.
James Lim
Edited by: James Lim on Mar 4, 2010 4:31 PM -
When opening an excel file I received as an attachment, and I want to open in Numbers, I either get major lag in viewing the workbook and editing it, Or I receive a message that an error occurred because there are "too many lines" and the workbook won't even import to Numbers
I have a "New" IPad 3rd gen.
Apple told me it is because I only have 512ram, but I understood that the new iPad had 1gb?
Is numbers just not strong enough?
Also, when I do get files to import, fonts, formulas and formats are commonly not supported and it negates being able to use the ipad to work on a workbook remotely and send it forward.
Are ther any fixes?this is the oracle forms forum. your chances increase going to the right forum.
Gerd
Maybe you are looking for
-
Looking for help to print up sheet music of the songs and chords
Hi everyone. This is my first post. I just got a new imac a few months ago. I am writing songs for garage band and would like to print them up with the chords, so basically home made sheet music. I am new to Macs and usually try this with a Microsoft
-
How do I block an e-mail from a particular sender?
I want to block a particular sender but Idon't know how, thanks.
-
How can a I copy from my disk a photo and paste it into a New -email I want to create?
I get a lot of e-mails with pictures or other graphics embedded in the e-mail but I can't seem to be able to insert my photographs or any other graphic information into new e-mails I want to create. How do I do this?
-
What happens when the ATV drive is full?
I'm considering purchasing either the 40GB or 120GB ATV and have a question about storage space. Will I be able to copy/sync to my computer, content purchased or rented on the Apple TV? I store my iTunes library on an external Firewire drive. TIA
-
HL7 Outbound runtime error: "Mandatory attribute missing: Standard"?
I am trying to develop an outbound HL7 v2 solution. I have a composite that picks up an XML message, transforms it to a HL7 v2 XML, popuates b2b. properties and hads the payload over to teh B2B. The partners and partnerships are, seemingly, OK. Yet,