With clause within the cursor ???
Hello gurus,
Can we have a with clause within the cursor ???
something like this ..
cursor test_cur is
WITH unpivoted_data AS
SELECT DISTINCT
f.cust_id
f.office_cd
f.type_cd
FROM refoff ro,
cutomer p,
office f
WHERE f.cust_id = p.cust_id
AND f.office_cd = ro.office_cd
AND f.type_cd IN ('ACCT', 'pay')
SELECT cust_id
, MAX (CASE WHEN type_cd = 'ACCT' THEN office_id END) AS acct_office_id
, MAX (CASE WHEN type_cd = 'pay' THEN office_id END) AS pay_office_id
FROM unpivoted_data
GROUP BY cust_id
test_cur_rec test_cur% rowtype;
Begin
for test_cur_rec in test_cur
loop
insert into test1 (.....) values (.......);
end loop;
end;
One more quick question .... How do u guys past in the posting ??? Like somesought of a box .....I have seen lot senior gurus when they are replying, they post the code in some sought of a box ....that makes very easy to understand and take look at the code in the posting....???
Thank you so much!!!
Hi,
user642297 wrote:
Hello gurus,
Can we have a with clause within the cursor ???Sure, but don't take my word for it. Try it and see!
If you get an error, post the error message.
If you get unexpected results, explain.
Whenever you have a problem, post your full Oracle version number.
One more quick question .... How do u guys past in the posting ??? Like somesought of a box .....I have seen lot senior gurus when they are replying, they post the code in some sought of a box ....that makes very easy to understand and take look at the code in the posting....??? Type these 6 characters:
(all small letters, inside curly brackets) before and after formatted sections.
Similar Messages
-
OPEN CURSOR using a WITH clause in the select query
Hi,
I am using Oracle 9i. I have a requirement where I have a REFCURSOR as an OUT parameter for my procedure. I have declared the TYPE and created the procedure.
In the procedure, I am using OPEN <cursor_name> FOR <query>;
Ideally this works in most of the cases that I have tried earlier. However, in the current case I am using a WITH clause in my query to get the results.
I need help in understanding if the above mentioned syntax would not allow me to use the WITH clause in the query.What error do you get , seems to work ok for me on 10g
SQL> begin
2 open :cv for 'with x as (select * from emp) select * from x';
3 end;
4 /
PL/SQL procedure successfully completed.
SQL> print :cv
EMPNO
ENAME
JOB MGR HIREDATE SAL COMM DEPTNO
7521
WARD
SALESMAN 7698 22-FEB-81 1250 500 30
7566
JONES
MANAGER 7839 02-APR-81 2975 20
EMPNO -
How can I create cursors within the cursor?
How can I create cursors within the cursor?
Table1 2001 - 2007 data
Account_no
Account_eff_dt
No_account_holder
Num
Seq_Num
Value1
Value2
Table2_Historical (doesn't have Num as a field) 1990 - 2000 data
Account_no
Account_eff_dt
No_account_holder
Seq_Num
Value1
Value2
Table3_06
Account_no
Account_eff_dt
No_account_holder
Num
My result table should be:
Table_result_06
Account_no
Account_eff_dt
No_account_holder
Num
Value1_min (the minimum value for the minimum of record_sequence)
Value2_max (the maximum value for the maximum of record_sequence)
I have to get data from Table1 and Table2_Historical. If one account was open in 1998 and is still effective, the minimum value of that account is in the Table2_Historical.
Let's say I open a cursor:
cursor_first is
select * from table3_06;
open csr_first
loop
fetch cursor_first into
v_Account_no
v_Account_eff_dt
v_No_account_holder
v_Num
EXIT WHEN csr_first%NOTFOUND;
How can I open a second cursor from here that will get the Seq_Num from Table1
csr_second
select Seq_Num from Table1 where
v_Account_no = Account_no
v_Account_eff_dt <= Account_eff_dt
v_No_account_holder=No_account_holder
v_Num = Num
How does it works???
Thanks a lotThanks so much for replying back. Here is what I am trying to do.
I have to create a table for each year 2002, 2003, 2004, 2005, 2006 that has all the account numbers that are active each year plus some other characteristics.
Let’s say I will create Table_result_06. This table will have the following fields. The account number, account effective date, Number of the account holder and the field Num (The primary key is a combination of all 4 fields), the beginning look of value 1 in 2006, the last look of value 1 in 2006.
Table_result_06
Account_no key
Account_eff_dt key
No_account_holder key
Num key
Value1_min (the minimum value for the minimum of record_sequence)
Value2_max (the maximum value for the maximum of record_sequence)
All the active account numbers with the Account_eff_dt, No_account_holder and Num are in the Table3. As such I can build a query that connects Table3 with table Table1 on all 4 fileds, Account_no, Account_eff_dt, No_account_holder, Num and find the Value1_min for the min of req_sequence in 2006 and Value1_max for the max of req_sequence in 2006. Here my problem starts.
Table 1 doesn’t have a new entry if nothing has changed in the account. So if this account was open in 1993 and nothing has changed I don’t have an entry in 2006 but this doesn’t mean that this account doesn’t exist in 2006. So to find the minimum value I have to go back in 1993 and find the max and min for that year and that will be max and min in 2006 as well.
As such I have to go to Table_2 historical and search for min and max. But this table doesn’t have the field NUM and if I match only on the Account_no, Account_eff_dt and No_account_holder I don’t get a unique record.
So how can I connect all three tables, Table 1 for max and min, if it doesn’t find anything will go to table 2 find the two values and populate Table_result_06.
Thanks so much again for your hep, -
Query within the Cursor loop is very slow
Hi ,
I have a stored procedure which has Select/Insert operation which is looped within the cursor. The Select uses variables from the cursor, and inserts the data into the table.
My problem is the peformance. The stored procedure executes in 2 mins if I hard code the where clause values in the Select. Instead if I use the variables obtained from the cursor, the query takes so long (more than 20 mins) to insert the same no of records into the table.
Below is the snippet of my code
create procedure sample is
declare
v_acct_month number(2);
v_sp_name varchar2(30);
cursor v_cur is Select distinct Acct_Month,salesperson_name from period;
begin
open v_cur;
loop
fetch v_cur into v_acct_month, v_sp_name;
exit when v_cur%notfound;
Insert into T1
Select * from T2,T3.. Where T2.month=v_acct_month,t3.sp_name=v_sp_name;
end loop;
End;
The query is not using the optimizer when the variables are used.The optimizer is used when I hard code the values in the select.
Please give me suggestions to make this query faster..
Thanks,
Arun
Edited by: [email protected] on Mar 28, 2009 10:18 AMHi,
Whenever you write code, format it to show the scope of BEGIN, LOOP, IF statements, and so on.
Type these 6 characters
{code}
(small letters only, inside curly brackets) before and after the formatted code, to preserve spacing on this site.
You've discovered why the tecnique you're using is called "slow-by-slow" processing.
You don't need a cursor. You may not even need PL/SQL.
Just write an INSERT statement that reference the table from the cursor and the tables from your current INSERT statement.
Here's one way:
INSERT
INTO t1 (columns)
SELECT columns
FROM t2
, t3
WHERE ...
AND (t2.month, t3.sp_name) IN (
SELECT DISTINCT
acct_month
, salesperson_name
FROM period
);Depending on the details of your case, there may be a better way, such as a 3-way join. -
Cursor within the cursor showing error
Hi,
I am using a cursor within the cursor to create a procedure.I am getting the below error while compiling this
15/7 PL/SQL: SQL Statement ignored
16/14 PL/SQL: ORA-00942: table or view does not exist
79/10 PL/SQL: Statement ignored
82/31 PLS-00364: loop index variable 'I' use is invalid
84/10 PL/SQL: Statement ignored
84/50 PLS-00364: loop index variable 'I' use is invalid
98/10 PL/SQL: Statement ignored
101/31 PLS-00364: loop index variable 'I' use is invalid
103/10 PL/SQL: Statement ignored
103/50 PLS-00364: loop index variable 'I' use is invalid
Am i using a wrong syntax,Could anyone help me on this..Please find my procedure code below
CREATE OR REPLACE PROCEDURE DM_EIS.YOY_PURGE_PRC
AS
VAR_TEMP NUMBER := 1;
VAR_TAB_NAME VARCHAR2(100);
VAR_TAB_OWNER VARCHAR2(100);
--For fetching table list to be processed
CURSOR CUR_ONE IS
SELECT OWNER,TABLE_NAME,FILTER_DATE,FILTER_VALUE
FROM DM_EIS.NONPART_PURGE_CTL WHERE NVL(STATUS,'NULL') <> 'COMPLETED'
AND PURGE_PREFERENCE='Y';
--For fetching indexs that are to be disabled
CURSOR CUR_IND IS
SELECT * FROM DBA_INDEXES WHERE TABLE_NAME = var_tab_name
AND OWNER = var_tab_owner
AND UNIQUENESS <> 'UNIQUE';
BEGIN
FOR C IN CUR_ONE
LOOP
--CHECK IF TEMP TABLE IS ALREADY PRESENT, IF SO DROP IT.
SELECT COUNT(*) INTO VAR_TEMP FROM ALL_TABLES WHERE TABLE_NAME = 'T_NOPART_PURGE';
IF VAR_TEMP = 1
THEN
EXECUTE IMMEDIATE 'DROP TABLE DM_EIS.T_NOPART_PURGE';
END IF;
---update the columns of Control table
UPDATE DM_EIS.NONPART_PURGE_CTL
SET STATUS = 'RUNNING'
WHERE TABLE_NAME = C.TABLE_NAME
AND OWNER = C.OWNER;
COMMIT;
UPDATE DM_EIS.NONPART_PURGE_CTL
SET START_TIME = SYSDATE
WHERE TABLE_NAME = C.TABLE_NAME
AND OWNER = C.OWNER;
COMMIT;
--Check whether the column value is date or year
IF C.FILTER_VALUE = 'YEAR' THEN
--Move data to temp table and truncate main table
execute immediate 'create table DM_EIS.T_NOPART_PURGE as select /*+ PARALLEL(ext,4) */ ext.* from '||c.owner||'.'|| c.table_name || ' ext where nvl(' || c.FILTER_DATE || ',''01-Feb-2009'') >= ''2009''';
DBMS_OUTPUT.PUT_LINE('Truncating the main table'||C.OWNER||'.'|| C.TABLE_NAME);
EXECUTE IMMEDIATE 'TRUNCATE TABLE ' ||C.OWNER||'.'|| C.TABLE_NAME;
else
--Move data to temp table and truncate main table
execute immediate 'create table DM_EIS.T_NOPART_PURGE as select /*+ PARALLEL(ext,4) */ ext.* from '||c.owner||'.'|| c.table_name || ' ext where nvl(' || c.FILTER_DATE || ',''01-Feb-2009'') >= ''01-Jan-2009''';
DBMS_OUTPUT.PUT_LINE('Truncating the main table'||C.OWNER||'.'|| C.TABLE_NAME);
EXECUTE IMMEDIATE 'TRUNCATE TABLE ' ||C.OWNER||'.'|| C.TABLE_NAME;
end if;
var_tab_name := c.table_name;
var_tab_owner := c.owner;
--Disable the indexes and load data back to main table,
for i in cur_ind
loop
execute immediate 'Alter index '||c.OWNER ||'.'|| i.index_name || ' unusable';
dbms_output.put_line(c.OWNER ||'.'|| i.index_name||' is unusable');
end loop;
---insert back the data into the table from temporary table
execute immediate 'insert /*Append*/ into '||c.OWNER ||'.'|| c.table_name || ' select /* PARALLEL(tmp,4) */ tmp.* from DM_EIS.T_NOPART_PURGE tmp';
commit;
--Rebuild the indexes
for i in cur_ind
loop
execute immediate 'Alter index '||c.OWNER ||'.'|| i.index_name || ' rebuild compute statistics';
dbms_output.put_line(c.OWNER ||'.'|| i.index_name||' is rebuilt');
end loop;
--Gather stats for the table
DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>c.OWNER,
TABNAME=>c.table_name,
CASCADE=>TRUE,
ESTIMATE_PERCENT=>dbms_stats.auto_sample_size
dbms_output.put_line(c.OWNER ||'.'|| c.table_name||' is analyzed');
---update the columns of Control table
update DM_EIS.NONPART_PURGE_CTL
set status = 'COMPLETED'
where TABLE_NAME = c.TABLE_NAME
AND OWNER = C.OWNER;
commit;
UPDATE DM_EIS.NONPART_PURGE_CTL
SET END_TIME = SYSDATE
WHERE TABLE_NAME = C.TABLE_NAME
AND OWNER = C.OWNER;
COMMIT;
UPDATE DM_EIS.NONPART_PURGE_CTL
SET ELAPSED_TIME =ROUND((END_TIME-START_TIME)*1440,2)
WHERE TABLE_NAME = C.TABLE_NAME
AND OWNER = C.OWNER;
COMMIT;
UPDATE DM_EIS.NONPART_PURGE_CTL
SET LAST_UPDATED_DT = SYSDATE
WHERE TABLE_NAME = C.TABLE_NAME
AND OWNER = C.OWNER;
COMMIT;
dbms_output.put_line('Data Purging is done for '||c.OWNER ||'.'|| c.table_name);
end loop;
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20003,' ERROR IN DM_EIS.NONPART_PURGE_PRC'|| SQLCODE||'-'||SQLERRM);
End;
/Oracle is not a Microsoft product. What it appears you are doing is a phenomenally efficient way to bring your database to its knees whimpering and begging that you take a class from Oracle University.
Temporary tables in Oracle are permanent tables and that is the proper design for working with the product. Creating "temp" tables using dynamic SQL in a stored procedure is multiple layers of bad practice layered on top of each other. Something made more obvious by the fact that you appear to not have read that portion of the docs that explain the differences between explicit privilege grants and grants made via roles when it comes to PL/SQL.
My recommendation is that you throw this code away and read the docs. First on the security model, roles, and object privileges. Next on the use of Global Temporary Tables. -
Hi,
I have a windows service written in .Net which access a COM component(This conponent is also written by me).
The COM component launches Acrobat and uses it for generating Thumbnail files.
I get following error is logged into event viewer when CreateDispatch("AcroExch.App", &e)) line is exicuted.
Error Message: The server {85DE1C45-2C66-101B-B02E-04021C009402} did not register with DCOM within the required timeout.
This problem occurs only when the windows service run under a specified user account say "TestUser". i.e if service runs under "Local System" account then everything works fine.
Also this problem only occurs on WinXP machine. i.e same thing on Windows2003 server works fine.
I have given all required permissions for "TestUser" on AcroExch.AVDoc and AcroExch.PDBookmark using dcomcnfg.
Any help will be appriciated.
Thanks and Regards,
Anand Mahadik.Hello,
start by running sfc /scannow to check if there is corrupt system files.
If this does not hellp, I recommend performing an in -place upgrade of your OS.
This
posting is provided "AS IS" with no warranties or guarantees , and confers no rights.
Microsoft
Student Partner 2010 / 2011
Microsoft Certified
Professional
Microsoft Certified
Systems Administrator: Security
Microsoft Certified
Systems Engineer: Security
Microsoft Certified
Technology Specialist: Windows Server 2008 Active Directory, Configuration
Microsoft Certified
Technology Specialist: Windows Server 2008 Network Infrastructure, Configuration
Microsoft Certified
Technology Specialist: Windows Server 2008 Applications Infrastructure, Configuration
Microsoft Certified
Technology Specialist: Windows 7, Configuring
Microsoft Certified
IT Professional: Enterprise Administrator
Microsoft Certified IT Professional: Server Administrator -
Windows XP - Unable to register with DCOM within the timeout limit
Just curious if anyone has run into iTunes server unable to register with DCOM within the given timeout limit?
Also quite often when I close iTunes, the process shutsdown but then 30sec - 2min iTunes opens its self right back up again. I ususally have to terminiate it from the Task Manager.
I am running the latest version of iTunes as of Sept 28th 1:30AMhave a look here http://www.grc.com/freeware/dcom.htm
Thinkpad R61 7733-1GU
Thinkpad X61T 7762-54U
Thinkpad X60T 6363-4GU
Did a member help you today? Thank them with a Kudo!
If a post answers your question, please mark it as an "Accepted Solution"!
Regards,
GMAC -
Windows Server 2012 becomes slow and unresponsive, event logs show DCOM errors in event logs. After server reboot server works normally.
Log Name: System
Source: Microsoft-Windows-DistributedCOM
Date: 10/28/2014 9:06:32 AM
Event ID: 10010
Task Category: None
Level: Error
Keywords: Classic
User: NETWORK SERVICE
Computer: ServerName
Description:
The server {1F87137D-0E7C-44D5-8C73-4EFFB68962F2} did not register with DCOM within the required timeout.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-DistributedCOM" Guid="{1B562E86-B7AA-4131-BADC-B6F3A001407E}" EventSourceName="DCOM" />
<EventID Qualifiers="0">10010</EventID>
<Version>0</Version>
<Level>2</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x8080000000000000</Keywords>
<TimeCreated SystemTime="2014-10-28T13:06:32.743836700Z" />
<EventRecordID>165767</EventRecordID>
<Correlation />
<Execution ProcessID="760" ThreadID="5560" />
<Channel>System</Channel>
<Computer>ServerName</Computer>
<Security UserID="S-1-5-20" />
</System>
<EventData>
<Data Name="param1">{1F87137D-0E7C-44D5-8C73-4EFFB68962F2}</Data>
</EventData>
</Event>Hi Avinash,
If this issue occurs again, please follow steps below to troubleshoot it,
Use the GUID in the error message to find what application it is.
Using Regedit, navigate to the following registry value:
HKEY_CLASSES_ROOT\CLSID\clsid value\LocalServer32. The clsid value is the information displayed in the message. Such as, {3EB3C877-1F16-487C-9050-104DBCD66683}
In the right pane, double-click
Default. The Edit String dialog box is displayed. Leave this dialog box open.
Click
Start, and then click This PC.
Using the information displayed in the
Value data box of the Edit String dialog box, navigate to the program.
Right-click the program name, and then click
Properties. The Properties dialog box for the program is displayed.
To determine who the vendor is for this program, refer to the
Version tab.
If you can’t find the file in the corresponding path, please replace with a good file.
Check if the related service have started. Stop and try to restart it.
If you have 3<sup>rd</sup> party applications, please disable it temporary, to see if this issue was caused by them.
For more details, please refer to links below, it provides more possible causes about event ID 10010.
DistributedCOM Error ID 10010
https://social.technet.microsoft.com/Forums/windowsserver/en-US/77b1db1d-f186-4515-8f7d-2241942eb9b7/distributedcom-error-id-10010?forum=winservergen
Best Regards,
Tina -
hello all.....
when i try to convert .indd file to PDF file in C# , i got the following error
The server {4D8E7D87-0103-42F6-BE82-598C7E90A42C} did not register with DCOM within the required timeout.
just 1 day ago i installed adobe indesign cs4 in my system.
do i need to install anything else???????
please let me know.
Thanks in advance.Hi Avinash,
If this issue occurs again, please follow steps below to troubleshoot it,
Use the GUID in the error message to find what application it is.
Using Regedit, navigate to the following registry value:
HKEY_CLASSES_ROOT\CLSID\clsid value\LocalServer32. The clsid value is the information displayed in the message. Such as, {3EB3C877-1F16-487C-9050-104DBCD66683}
In the right pane, double-click
Default. The Edit String dialog box is displayed. Leave this dialog box open.
Click
Start, and then click This PC.
Using the information displayed in the
Value data box of the Edit String dialog box, navigate to the program.
Right-click the program name, and then click
Properties. The Properties dialog box for the program is displayed.
To determine who the vendor is for this program, refer to the
Version tab.
If you can’t find the file in the corresponding path, please replace with a good file.
Check if the related service have started. Stop and try to restart it.
If you have 3<sup>rd</sup> party applications, please disable it temporary, to see if this issue was caused by them.
For more details, please refer to links below, it provides more possible causes about event ID 10010.
DistributedCOM Error ID 10010
https://social.technet.microsoft.com/Forums/windowsserver/en-US/77b1db1d-f186-4515-8f7d-2241942eb9b7/distributedcom-error-id-10010?forum=winservergen
Best Regards,
Tina -
The server did not register with DCOM within the required timeout.
Hi All,
I am using Thinkpad T43 (type 1871) with Windows XP SP3, but sometimes I find the following message in the Event Viewer:
The server {7160A13D-73DA-4CEA-95B9-37356478588A} did not register with DCOM within the required timeout.
What may be the reason for this message?
How it can be solved?
Regards,
Alperhave a look here http://www.grc.com/freeware/dcom.htm
Thinkpad R61 7733-1GU
Thinkpad X61T 7762-54U
Thinkpad X60T 6363-4GU
Did a member help you today? Thank them with a Kudo!
If a post answers your question, please mark it as an "Accepted Solution"!
Regards,
GMAC -
is it possible to use with clause in cursor declaration.
see the below simple example.
it gives error.
declare
cursor t is
(with hi as
(select * from pepole )
select distinct hi.id from hi where id =55);
begin
null;
end;Remove the outer set of parenthesis.
declare
cursor t is
with hi as
(select * from emp )
select distinct sal from hi;
begin
null;
end; -
Hi Gurus
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod
I am trying to create a procedure that I would run occasionally for reporting purposes, the procedure is going to populate test_stats table, which then will be accessed through Excel.
Following code gives out an error. I think it is regarding WITH clause...
ERROR line 10, col 12, ending_line 10, ending_col 12, Found 'x', Expecting: ( or SELECT VALUES
1. Is wrapping up all insert statements into one proc a good idea? Other options?
2. I have checked the oracle docs and I didnt see any restriction regarding the use of WITH within proc. What is the cause of the error?
test_stats has only one column NUMBER.
CREATE OR REPLACE PROCEDURE test_stats_1
IS
BEGIN
INSERT INTO test_stats
WITH x AS
(SELECT count(*) cnt
FROM DUAL) --some complex query
SELECT cnt
FROM x;
END;
/ Thanks
Tzx8754 wrote:
My client version is:
DEFINE _SQLPLUS_RELEASE = "1002000400" (CHAR)It is higher value than yours, does this mean mine is newer?
btw, that INSERT statement on its own without proc works fine.
Edited by: zx8754 on 02-Jul-2010 03:10What is your exact database version? The client version shouldn't matter.
I had a similiar problem once in oracle 9.2.0.3. The SQL syntax inside PL was slightly behind the normal SQL syntax. This lead to the effect that I could run a specific SQL statement in SQL*PLUS but not from inside a package. At this time it had been the order clause of the XMLAGG function. This was a bug and was fixed in a later version (9.2.0.4 or 9.2.0.8).
Maybe you have a similiar issue, also I thought that this versioning conflict was fixed in Oracle 10.x.
btw it works for me:
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Jul 2 16:57:54 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
xxx@yyy> CREATE OR REPLACE PROCEDURE test_stats_1
2 IS
3 BEGIN
4 INSERT INTO test_stats
5 WITH x AS
6 (SELECT count(*) cnt
7 FROM DUAL) --some complex query
8 SELECT cnt
9 FROM x;
10 END;
11 /
Procedure created.
xxx@yyy> Edited by: Sven W. on Jul 2, 2010 4:59 PM -
Hi all, I take wildlife photos (mostly birds) as a hobby, and have become frustrated with the quality of my photos recently when shared online, particularly Facebook.
I started blaming my camera ( a Canon 7D) as I changed it a few months ago from a Canon 550D, and I soon noticed that the images were not as good. Then I realised it was when I started using Aperture.
I started by using the 'share' option within Aperture but I soon realised that then I have no control over the creation of an album, and the photos start appearing on facebook before I have finished uploading them and given them captions. Plus if I subsequently move them or export them to my back up drive then they disappear from Facebook!
So I started creating albums within Facebook and then importing the photos from the aperture projects file on my computer. Because they are imported I can then delete or move the aperture file and the photos stay on facebook. Otherwise my macbook was becoming completely full.
However to test my theory I have today uploaded the same photo edited in Aperture stored in the same projects folder using the two different methods described above, and there is a very distinct difference between the quality of the two images. The shared ones are very much sharper than the imported ones.
I am a computer novice and don't know how to check what the quality settings are, or how to adjust anything to improve the way the photos go into facebook. I do have a manual but I just cant understand it :-(
I have tried a free sample of Lightroom 5 and my photos look amazing, there is such a difference, but I don't want to give up with Aperture unless the problem really can't be solved.
Sorry for such a long first post, I would be very very grateful for any help you can give me!
Regards
SusanGenerally I would not use Facebook for sharing any photos, it compresses the photos substantially, and when you have shadows and dark colours you get visible "bands" where there should be subtle gradients, ie at sunsets and sunrises.
It sounds like you are using two methods to upload to Facebook:
1. Sharing from within Aperture, which basically syncs Facebook with your Aperture album, so any changes made at either end gets synced, hence the deletions from Albums, although the original file should still be in your library, just removed rom the album. It is like a playlist in iTunes.
2. Exporting pics and uploading to Facebook from the browser.
I am not sure how method 1 gets compressed, but I know that uploading hi-res jpegs to Facebook using method 2 results in poor quality images.
I wouldn't even bother comparing option 1 or 2, and they will both be poor images once you view them on Facebook, as opposed to viewing uploaded images on proper image sharing / hosting sites.
Your problem is not with Aperture, it is using Facebook for showing your work.
If you export pics form Aperture at high res jpegs or TIFFs your images will be fine.
If you insist to use Facebook as your way to share your work, then your workflow should be this:
1. Right click images you want to share.
2. Select Export version.
3. Export as 100% size and ensure the export settings are set at 100% quality.
4. Upload this pic into Facebook.
This will get you the best image size and resolution on Facebook.
See how you go. -
When I zoom in + out with dodge tool the cursor changes
So I just installed CS5 on a newly formatted PC.
I didn't used to have this problem before before I completely formatted on HDD do to a virus + reinstalled Windows7, although now its getting on my nerves.
Basically when I zoom in the dodge tool circle will change into a half circle and if I zoom in even more it will change into what seems to be two circles intertwined and if I zoom out around 35% it changes into 4 full circles???
Even when I switch from my photoshop in the taskbar to firefox (without zooming back in) the cursor then changes into 4 normal mouse pointers???? For some reason it will quickly switch back if I press a button on my keyboard. But thats about it, maybe this might be a problem with my video driver maybe?
Im using Inegrated Gfx: Intel GMA X4500Just updated driver... seems fine for now.
-
Problems with cmdlets within the Exchange 2013 powershell
Hi,
i've following problem: I can't access all possible powershell cmdlets within the exchange powershell. For example following cmdlet is missing: "Get-Queue". Also we have trouble with some other cmdlets: Get-Mailbox only lists one of 30 mailboxes
and if we want to modify a mailbox identified by the logonname an error shows up that the user can't be found. Only the one listed user can be modified.
What can I do to solve this problem?
Yours
AchimHi Achim,
You need to be assigned appropriate permissions or roles before you can run all cmdlet. Although all parameters for this cmdlet are listed, you may not have access to some parameters if they're not included in the permissions assigned to you. For example
to run Get-Queue cmdlet - your user account must be assigned the "Organization Management" or at least "Server Management" role.
You can try this to view roles assigned to your account:
Get-ManagementRoleAssignment -RoleAssignee 'yourUserAcc' -Role "organization*" | fl role
Get-ManagementRoleAssignment -RoleAssignee 'yourUserAcc' -Role "*transport*" | fl role
Otherwise you can view and change role assignments with EAC:
In the EAC, navigate to Permissions > Admin Roles.
Select the role group you want to view the members of.
In the role group details pane, view the members in the role group details pane.
▲ Vote if Helpful / Mark if Answer
MCSE: Messaging 2013 Charter / Private Cloud / Server Infrastructure
MaximumExchange.ru
Maybe you are looking for
-
Whenever I connect my iPhone to iTunes, it comes up with an error message
Okay so my brother received his new iPhone 5s a couple of weeks back and we share an iTunes account so I connected his iPhone to my macbook because his laptop has broken USB ports. Everything was fine and all, but I went to connect my phone to my Mac
-
Hallo, the photoshop installations is really slow after updating to version 2014. So I checkt all performance related facts. I the settings of photoshop I saw, that there is only the defauld drive (systemdrive) in list of volumes. This is not the opt
-
Where can I get driver for network scanning on my Laserjet Multifunction M1120n for Windows 7?
Where can I get driver for network scanning on my Laserjet Multifunction M1120n for Windows 7 64bit? It must be the Windows 7 driver of Scanto.msi. Thank you for your support. This question was solved. View Solution.
-
End of communication channel on creating Materialized view
Dear All, I've Oracle Enterprise Edition(ver 9.0.1.1.1) running on Windows Xp Home Edition, When I run the following statement to create a materialized view I got the famous error ORA-03113: end-of-file on communication channel.And the strange thing
-
I am creating a large PDF form that people will fill out, save, and return to us. I am wondering if there is a simple method to extract the data from the PDF and store the values in a database (excel or access). I can program in java if needed, but I