Tuesday, May 18, 2010

fastest fishless cycle

fastest fishless cycle

Please note: Fishless cycling is the ONLY way a tank should be prepared for fish.

PWC Partial Water changes

The purpose of cycling is to build up the beneficial bacteria in a tank that
feed off the waste materials of your fish/inverts.
Without these present in great enough numbers, your fish will kill themselves with their own waste.
By building up these bacteria prior to adding in fish, you avoid harming your fish.
Unlike traditional cycling where a small amount of hearty fish are introduced into a tank,
and slowly additional fish are added,
fishless cycling (when properly performed) allows for a complete stocking of the tank at once.
This is a huge benefit, and one which is often overlooked.


The 2 types of bacteria we are looking to grow convert ammonia (fish waste which is quite toxic)
to nitrIte (actually more toxic than ammonia but not as long term damaging),
and finally to nitrAte (relatively non-toxic unless allowed to build up to large amounts).
So that's:
ammonia---->nitrIte--->nitrAte

The first conversion to nitrIte occurs faster than the second conversion to nitrAte.
Once the cycle is completed PWC's are required to keep the nitrAte level acceptable (general consensus is <40ppm) unless plants are present.

-Setup the tank, put all filters/heaters/decorations/etc in place.
Fill your tank up with tap water. DO NOT USE A DECHLORINATOR AT THIS TIME!

-Turn everything on and make sure it all works.
Better to find out now that the heater is broken, then 2 weeks into the cycle when nothing is happening

-Let the tank run for 30 minutes or so and check for leaks/malfunctions

-Now add in your dechlorinator (I prefer Prime).
Waiting to use a dechlorinator essentially sterilizes your tank from any contaminants
(especially if you have chloramines in your tap water).

-Purchase a good liquid reagent test kit that tests ammonia, nitrIte, nitrAte, pH, etc.
A lot of us on here use the Aquarium Pharmaceuticals FreshWater Master Test Kit (AP test kit for short).

-Now you need an ammonia source! Many fishkeeper's forget this step and without food, the bacteria will not multiply.
Pure ammonia is the easiest and best way to do a fishless cycle however,
you can use fish food or a raw shrimp but measurements will not be as accurate.
You need to find pure ammonia that does not contain any additives such as detergents or scents.

-With the ammonia purchased, and your test kit handy, dose the tank to ~5ppm ammonia.
If you add too much, do a Partial water change to reduce the level, if you add too little, dose more.
It doesn't need to be exact, but just aim for 3-5ppm.
Every couple of days test the ammonia level, when it gets below 1ppm, add more ammonia to keep the level above 1ppm.
Normally when I see it get below 1ppm, I dose 3-4ppm back in.
Never let it go to zero (until the cycle is finished) or you risk killing off your ammonia to nitrIte bacteria!


-Turn your heater up! Aim for 85-87F.
This increased temperature speeds up the metabolism of the bacteria which reduces the cycle time.


-Turn on any bubble wands, lower the water an inch or two if using HOB filters, turn on any PH's you might have.
Increasing agitation increases the dissolved O2 levels which bacteria like/want/need.

-Buy/borrow a small bottle of pH down. Add 1-2 drops per 4 gallons of tank water.
These pH products contain large amounts of phosphates which your bacteria need to grow.
This small amount will not affect the pH of the tank and will supply all the phosphate needed.
Lots of "my cycle stopped/stalled" posts can be attributed to phosphate deficiency.
A small amount of fishfood can probably also be substituted in place of this.


-Add in a VERY small amount of flake fish food.
When I mean small I mean microscopic!
About the size of a grain or 2 of rice.
Pulverize it into a very fine powder and add it in.
This will take care of any trace elements required by the bacteria and probably the phosphate requirement as well.



-Now its time to seed the tank!
This is the single most important step in the entire cycle.
The more seed material you can procure, the faster the cycle will go.
Seed material is anything you can take from an established tank.
Filter media (sponges/floss/ceramic media) is the #1 best.
This stuff is FULL of bacteria and exactly what you want.
Next up would be substrate (sand/gravel).
And last but not least would be decorations/ornaments.
Do you have a friend with a gaudy/hideous pink castle that's been in his goldfish tank for 3 years?
Beg/plead/steal it from him/her for a couple of weeks.
But make sure you keep anything wet in the tank water until
you can add it to your tank If it dries out in transit, the bacteria's dead!


With your tank setup and seed material you now want to maximize colonization of the surfaces.
If you are given a piece of filter media squish it in the tank water first.
This will cloud the tank with bacteria laden particles.
These will fly all over the tank and "seed" the surfaces with bacteria.
Then put the filter material in your filter.
It doesn't matter if it's not made to fit, find a way to get it in there.
HOB and canister filters normally allow for several compartments, make one of them the seed filter material.
Place it at the FRONT of the filtering.
By that I mean put the seed material as the first thing the water hits when entering the filter.
This will cause any bacteria that is released from the seed material to contact the new filter first, which is where you want the bacteria to be.


If you are given substrate (and don't mind it in the tank) spread it out all over the bottom.
This maximizes surface area and will allow the most contact with the bacteria and food source.



If the substrate is something you don't want in the tank after the cycle put it in the foot of a new UNWASHED piece of pantyhose.
Rinse the pantyhose under tap water but make sure it never went in the wash.
Detergents/fabric softener will kill your tank!
Squish the substrate around every day or two.
You'll notice it will cloud the tank.
This is a good thing as bacteria is being released into the water.
This is how I cycled my 20 gallon.
I did not have filter media, only a small amount of gravel from an established tank.
I put 1/2 the gravel in a filter insert in my HOB, and the rest in some pantyhose (since I had PFS and didn't want the gravel).
A couple of weeks after the cycle finished I removed the seed gravel (you don't want to remove it too soon or you may cause a minicycle).



Now for a note about bacteria.
They are surface adherers.
That is, very little of the bacteria is present in the water itself, the majority is attached to the surfaces in the tank.
This means that a PWC during the cycle is not necessarily a bad thing.
It's normally not needed, but if it is for some reason (say you overdose on the ammonia), don't fret!


A quick word on pH.
Ideally you want the pH of the tank to be ~7.5.
The ammonia to nitrIte bacteria prefer a higher pH (closer to 8.0), while the nitrIte to nitrAte bacteria prefer a lower pH (closer to 7.3).
Go too high and your nitrItes will build up, go too low and your ammonia won't get converted.
If you have a pH crash (either too high or too low, say pH 6.0 or pH 9.0) you have to do a PWC.
At these ranges your bacteria will seriously begin to slow down metabolism.


Keep the tank lights off and direct/indirect sunlight to a minimum.
This time in the tank is RIPE for algae outbreaks.
High ammonia levels, steady CO2 levels (from high aeration), and possible light can cause your tank to look like pea soup.
The bacteria do NOT require a light source, and in fact, direct sunlight can cause the bacteria to multiply slower.
Bottom line, keep it dark!


So now you have the perfect temperature, a steady food source with trace elements in abundence, good oxygen levels, your all set!


When you see your ammonia level drop to below 1ppm, increase it back up to 3-5ppm.
You will most likely build up a LARGE amount of nitrIte because the bacteria that convert nitrIte to nitrAte were at a disadvantage waiting for their food (nitrIte).
I've often thought of creating a product of pure nitrIte for cycling.
That way you can dose both ammonia and nitrIte at the beginning which would speed up the entire cycle.
Now don't go and steal my idea!



Watch your nitrAte levels.
When they start to rise wait about 5-7days and, if your nitrIte levels are really high (>10ppm),
I'd recommend a large PWC to bring the number down into a readable range.
This will not affect the cycle, and will keep you sane as you can watch the levels vary.
You might see the levels continue to go up as you will still have more ammonia converting bacteria,
but if you watch the nitrAtes you'll know your heading in the right direction. Several members on here have really been done the cycle,
but because there was so much nitrIte in the tank they didn't know it! (hint I was one of them....)

Once you can convert 1-2ppm ammonia completely to nitrAte in 24hours or less you can do a large (or several)
large PWC's to get the nitrAtes below 40ppm (<20ppm preferably).
Now decrease the tank temperature to 78-82F if housing tropicals, otherwise whatever temperature you need.
Make sure the temp is stable before addition of fish.

Now your all set to fully or near fully stock your tank!

XML from QUERY Directky

SELECT DBMS_XMLGEN.getxml(
'SELECT CURSOR(SELECT oha.order_number,
ola.ordered_item,
ola.ordered_quantity
FROM ont.oe_order_headers_all oha,
ont.oe_order_lines_all ola
WHERE oha.header_id = ola.header_id
and oha.order_number in (&order_number) order by ola.line_id) as order_detail,
CURSOR(SELECT ohd.name, ohs.hold_comment
FROM ont.oe_hold_sources_all ohs,
ont.oe_order_holds_all ohld,
ont.oe_hold_definitions ohd,
ont.oe_order_headers_all oha,
ont.oe_order_lines_all ola
WHERE oha.header_id = ola.header_id
AND ola.line_id = ohld.line_id
and ohld.hold_release_id is null
AND ohld.hold_source_id = ohs.hold_source_id
AND ohs.hold_id = ohd.hold_id
AND oha.order_number = &&order_number) as holds_detail
FROM DUAL')
FROM DUAL

Link between AR and OM

SELECT ooha.order_number
, oola.line_number so_line_number
, oola.ordered_item
, oola.ordered_quantity * oola.unit_selling_price so_extended_price
, rcta.trx_number invoice_number
, rcta.trx_date
, rctla.line_number inv_line_number
, rctla.unit_selling_price inv_unit_selling_price
FROM oe_order_headers_all ooha
, oe_order_lines_all oola
, ra_customer_trx_all rcta
, ra_customer_trx_lines_all rctla
WHERE ooha.header_id = oola.header_id
AND rcta.customer_trx_id = rctla.customer_trx_id
AND rctla.interface_line_attribute6 = TO_CHAR (oola.line_id)
AND rctla.interface_line_attribute1 = TO_CHAR (ooha.order_number)
AND order_number = :p_order_number

Unix concurrent Program

In Shell Script, $1 is the variable that stores following information
- Concurrent Program Short Name
- Request ID
- Login Information(APPS username and password)
- User Id
- User Name
- Printer Name
- Save output Flag
- Print number of Copies
- List of concurrent program parameters



requestid=`(echo $1 | cut -f2 -d' ' | cut -f2 -d= | tr -d '"' )` #request_id
login_usr_pwd=`(echo $1 | cut -f3 -d' ' | cut -f2 -d= | tr -d '"' )` #database username/password
conc_user_id=`(echo $1 | cut -f4 -d' ' | cut -f2 -d= | tr -d '"' | cut -c1-8)` #userid
conc_user_name=`(echo $1 | cut -f5 -d' ' | cut -f2 -d= | tr -d '"' | cut -c1-8)` #username
prog_param1=`(echo $1 | cut -f9 -d' ' | tr -d '"' )` #parameter 1
prog_param2=`(echo $1 | cut -f10 -d' ' | tr -d '"' )` #parameter 2
prog_param3=`(echo $1 | cut -f11 -d' ' | tr -d '"' )` #parameter 3
prog_param4=`(echo $1 | cut -f12 -d' ' | tr -d '"' )` #parameter 4
prog_param5=`(echo $1 | cut -f13 -d' ' | tr -d '"' )` #parameter 5
prog_param6=`(echo $1 | cut -f14 -d' ' | tr -d '"' )` #parameter 6

Wednesday, May 12, 2010

Good Links

http://oracleworld.wordpress.com/2008/12/18/after-running-create-internal-sales-order-pociso-how-to-determine-whether-the-sales-order-information-was-sent-to-order-entry/

http://www.oracleappshub.com/category/edi/

http://knoworacle.wordpress.com/2009/06/12/interview-questions-for-oracle-11i-apps-manufacturing/

Tuesday, May 11, 2010

TANK LOAD PLAN

http://www.thetropicalfishtank.com/tropical-fish-information/the-unusual-tropical-betta-fish/
3 x Albino Cory (Corydoras aeneus)
6 x Zebra Danio (Danio rerio)
3 x Guppy (Poecilia reticulata)
5 x Ghost Shrimp (Palaemonetes sp.)
5 x Neon Tetra (Paracheirodon innesi)
Tank (LxDxH): 24 x 12 x 12 inch (15.0gUS)
Filters: Aqua One Aquis 500
• Suggestion: If you want to keep more than 1 Guppy, minimum recommend male to female ratio is 1:2 (M:F). You will be less likely to experience problem if you get even more females.
• Warning: At least 4 x Albino Cory are recommended in a group.

Recommended temperature range: 22 - 24 C. [Display in Farenheit]
Recommended pH range: 6 - 7.5.
Recommended hardness range: 5 - 15 dH.


Warning: You should add more aquarium filtration capacity.

Your aquarium filtration capacity for above selected species is 94%.
Recommended water change schedule: 43% per week.
Your aquarium stocking level is 105%.

On Hand API

FUNCTION get_onhand_qty (
p_inventory_item_id NUMBER,
p_org_id NUMBER,
p_subinventory_code VARCHAR2
)
RETURN NUMBER
IS
v_api_version_number NUMBER := 1.0 ;
v_init_msg_lst VARCHAR2 (100);
v_return_status VARCHAR2 (100);
v_msg_count NUMBER;
v_msg_data VARCHAR2 (2000);
v_organization_id NUMBER;
v_inventory_item_id NUMBER;
v_tree_mode INTEGER:=inv_quantity_tree_pub.g_transaction_mode;
v_is_revision_control BOOLEAN default false;
v_is_lot_control BOOLEAN default false;
v_is_serial_control BOOLEAN default false;
v_demand_source_type_id NUMBER;
v_demand_source_header_id NUMBER;
v_demand_source_line_id NUMBER;
v_demand_source_name VARCHAR2 (500);
v_lot_expiration_date DATE;
v_revision VARCHAR2 (100):=null;
v_lot_number VARCHAR2 (100):=null;
v_subinventory_code VARCHAR2 (100);
v_locator_id NUMBER:=null;
v_onhand_source NUMBER:= inv_quantity_tree_pvt.g_all_subs;
v_qoh NUMBER;
v_rqoh NUMBER;
v_qr NUMBER;
v_qs NUMBER;
v_att NUMBER;
v_atr NUMBER;
v_transfer_subinventory_code VARCHAR2 (100);
v_cost_group_id NUMBER;
v_lpn_id NUMBER;
v_transfer_locator_id NUMBER;
v_onhand_qty NUMBER;
BEGIN
setdebug('Calling inv_quantity_tree_pub.query_quantities Procedure..'
);
fnd_client_info.set_org_context (2);
inv_quantity_tree_pub.query_quantities
( p_api_version_number=> v_api_version_number
, p_init_msg_lst => v_init_msg_lst
, x_return_status => v_return_status
, x_msg_count => v_msg_count
, x_msg_data => v_msg_data
, p_organization_id => p_org_id
, p_inventory_item_id => p_inventory_item_id
, p_tree_mode => v_tree_mode
, p_is_revision_control => v_is_revision_control
, p_is_lot_control => v_is_lot_control
, p_is_serial_control => v_is_serial_control
--, p_demand_source_type_id => v_demand_source_type_id
--, p_demand_source_header_id => v_demand_source_header_id
--, p_demand_source_line_id => v_demand_source_line_id
--, p_demand_source_name => v_demand_source_name
--, p_lot_expiration_date => v_lot_expiration_date
, p_revision => v_revision
, p_lot_number => v_lot_number
, p_subinventory_code => p_subinventory_code
, p_locator_id => v_locator_id
, p_onhand_source => v_onhand_source
, x_qoh => v_qoh
, x_rqoh => v_rqoh
, x_qr => v_qr
, x_qs => v_qs
, x_att => v_att
, x_atr => v_atr
--, p_transfer_subinventory_code => v_transfer_subinventory_code
--, p_cost_group_id => v_cost_group_id
--, p_lpn_id => v_lpn_id
--, p_transfer_locator_id => v_transfer_locator_id
);

IF x_msg_count > 0
      THEN
         FOR v_index IN 1 .. x_msg_count
         LOOP
            fnd_msg_pub.get (p_msg_index => v_index, p_encoded => 'F', p_data => x_msg_data, p_msg_index_out => v_msg_index_out);
            DBMS_OUTPUT.put_line (x_msg_data);
            END LOOP;
end if;

v_onhand_qty := v_atr;
Return v_onhand_qty;
EXCEPTION
WHEN OTHERS
THEN
setdebug('Error in get_onhand_qty Function '
|| SUBSTR (SQLERRM, 1, 50)
);
RETURN NULL;
END get_onhand_qty;

Friday, May 7, 2010

FILTERS

The only filters that you really need to produce professional-level images are a warming filter, polarizing filter, and a graduated neutral density filter.

Warming EffectThe filter that I use the most, by far, is the warming filter. It is used primarily in overcast light or in shade to remove the inherent blue or cold light from such scenes. As a result, an amber or warm tonality is added to the scene

Polarizing Filter Effect
Polarizing filters are used primarily to remove glare and can darken a blue sky if used at approximately a 90Þ angle. Here’s the shot on film without a polarizing filter. Notice how flat it is. The colors are actually very vibrant, but the glare is masking, or absorbing,
the color

A polarizer is almost never appropriate for portraiture.

Split Graduated Neutral Density
These filters are amazing in that they make images that are otherwise impossible to capture. These filters lower the contrast range by masking the highlights thus rendering detail in very dark and very bright areas, rather than blowing out the highlights or blackening shadows. The following examples are illustrative of using graduated neutral density filters


UV Filter
The "traditional" visible spectrum runs from red to violet. Red light has the longest wavelength and violet the shortest. Light which has a longer wavelength than red is called infrared, and light which has a shorter wavelength than violet is called ultra violet or UV.

There are basically three color sensitive layers, one sensitive to red light, one to green light and one to blue light. The blue layer not only responds to blue light, but also to UV light, so if there is a lot of UV around the blue sensitive layer gets extra exposure and the final image takes on a blue color.

three filters often used in place of a UV filter (i.e. filters which some photographers keep on the lens at all times as protection). These are the Hoya 81B, the Tiffen 812 and the B+W KR1.5. All three are warming filters in that they shift the color balance towards the red (warm) end of the tonal range.
As you can see all three of the warming filters were effective UV absorbers, as well as slight absorbers in the blue and green regions of the spectrum (which is what makes them warming filters). The polarizer absorbed slightly more in the UV than the visible, though I wouldn't call it an effective UV absorber.

Tiffen 812 . It blocks UV, it protects the lens and it's a warming filter. Some people use an 81B for this, but I slightly prefer the color shift of the 812. Not everyone wants a warming filter, so the clear winner for a neutral filter that really bocks UV is the Tiffen Haze-1, though the Hoya UV should also be pretty effective.

Wednesday, May 5, 2010

CERTIFICATION

Wish List

PMI
APICS CSCP Exam