|
Hi genius,
Nice to meet you here!
When developing BI programs with SQL Server 2005, I got this problem:
Users want the report should be exported in office excel 2003 format, and stored in PIVOT TABLE.
We have decided to use OLAP tech in SSAS(SQL Server2005 Analysis Services) to generate cubes.
If we just use excel as a client tool, and create a pivot table which connects to the cube database, it's ok.
But, the users want to download the excel file from a web page, further more , they want to filter the data through the web page.
How can I do?
Help inline.
Thank you!
|
|
|
|
|
Hi everyone,
I'm sure i've read everything i can find on the web about CurrencyManager and Databinding and I still can't find a (good) answer to a really annoying problem.
I've solved the problem enough to get development moving again but the hack breaks every law of OO programming known to man and i'm sure will cause other problems for me down the line.
I'm trying to raise an event from a collection class that has its data updated by a class that sits monitoring some web services on a background thread. This collection is bound to a DataGridView. When data arrive in the collection class it raises a ListChanged Event. I then get the delightful cross-threading... error. I've tried inspecting the ListChanged.Target and it's a CurrencyManager Object. I've looked at the CurrencyManager object on MSDN and it has no Invoke method. I thought cool it's got a bindings collection, one of those will be a control and i'll invoke against that, this seemed to make sense until i realised that there were 0 items in the bindings collection.
My truly filthy hack is to pass a control from the UI into the monitoring class. This is obviously very wrong as this class should know nothing about the objects connected to it.
Does anyone know how to find a control given a CurrencyManager, why i don't appear to have any items in the bindings collection or how i can get my event to fire on the UI thread by any other means.
Thanks in advance,
Russell
|
|
|
|
|
Hi Everybody,
I have a multi-column listbox.
I need to change the width of the listbox,
based on the string length. I've written
the code in a function 'ResetLBWidth'.
This function should get called whenever I add a
string to the list box. How can I handle this?
I don't find any event like "NewItemAdded"..
Suggest me a path to achieve this.
Thanks in advance,
Sarvan AL
|
|
|
|
|
There is no any event like "NewItemAdded" for listbox.
If you are mannually filling the listbox then the whole control is in your hand. You can call the method ResetLBWidth where you are adding the data to listbox.
If you have assigned some data source to the list box and your data source is changing then you have DataSourceChanged event to map.
|
|
|
|
|
There is an event called TextChanged that rises whenever the text changes in the textbox. Meaning it will rises if u delete a character, add a character, replace a charachter .......
good luck
|
|
|
|
|
Hello,
I would like to know if it's possible (and how) to get the free memory (RAM).
I searched in google and here on the forum but had no luck so far. (It's also quit difficult to search for "free memory" )
Thanks for youre time and help,
Martin
|
|
|
|
|
That's hardware, and hardware isnt downloadable
|
|
|
|
|
Hello,
Anton Afanasyev wrote: That's hardware, and hardware isnt downloadable
Sorry but I don't even understand that joke?
Maybe you can help next time.
|
|
|
|
|
gaaaah whats with people and no sense of humour. hmm, maybe its due to me having to be in bed by now...
anyways, what i mean was that you were asking where you could get free RAM, and searching in google didnt help. as in, nobody willing to give you free ram.
/me holds up "LAUGH NOW" sign...
|
|
|
|
|
If it makes youre day better, I send you:
Anton Afanasyev wrote: whats with people and no sense of humour
Maybe humor like that makes more fun if it is posted togetter with a real answer!
All the best,
Martin
|
|
|
|
|
The sad thing is, I replied to what I thought he meant...then later, adapted that answer to the situation. heh.I guess I deserved those 1 votes.
|
|
|
|
|
Yes, I guess it's possible using SDK Memory related API's.
Can't recall the exact API's though (had used them some 5yrs back ), try finding them on MSDN.
Hummm .... can recall of one called "GetSystemInfo" which returns info about current system.
Good luck !!
Regards,
Bhupi Bhai.
|
|
|
|
|
Thanks very much in advance!
I'll give it a try (GetSystemInfo in kernel32.dll)!
Martin
|
|
|
|
|
Hello,
Had no luck with that.
GetSystemInfo returns a:
[StructLayout(LayoutKind.Sequential)]
class SYSTEM_INFO
{
public ushort wProcessorArchitecture;
public ushort wReserved;
public uint dwPageSize;
public IntPtr lpMinimumApplicationAddress;
public IntPtr lpMaximumApplicationAddress;
public IntPtr dwActiveProcessorMask;
public uint dwNumberOfProcessors;
public uint dwProcessorType;
public uint dwAllocationGranularity;
public ushort wProcessorLevel;
public ushort wProcessorRevision;
}
I implemented it like that:
[DllImport("kernel32.dll", CharSet = CharSet.Unicode,CallingConvention = CallingConvention.Winapi, EntryPoint = "GetSystemInfo")]
private static extern void GetSystemInfo([In,MarshalAs(UnmanagedType.LPStruct)]SYSTEM_INFO pSysInfo);
And called it like that:
SYSTEM_INFO sysinfo = new SYSTEM_INFO();
GetSystemInfo(sysinfo);
But I didn't found a member that fits me needs
If I made something wrong, please let me know.
But again thanks for youre time.
Martin
|
|
|
|
|
Yes, ur on the right track.
But I am sorry can't recall the exact API for it.
You will have to do some more rnd on this.
Regards,
Bhupi Bhai.
|
|
|
|
|
Found it!
GlobalMemoryStatus from kernel32.dll
Thanks again!
|
|
|
|
|
I would suspect you can get the info though WMI. Using WMI from C# is fairly simple - you should be able to get a sample from Google. I would probably try to split the search into two:
1) How to use WMI from C#
2) How to get the free memory though WMI (in any language)
just in case you can't easily find an example getting the free memory from C#.
|
|
|
|
|
Hello,
I think I found it 5minutes ago.
But I will need it in future.
Thank you.
All the best,
Martin
|
|
|
|
|
Yes, lmoelleb (is that ur name) is right.
Using WMI in C# you can get Free Physical Memory.
ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem");
ManagementObjectCollection queryCollection1 = query.Get();
foreach(ManagementObject mo in queryCollection1 )
{
Console.WriteLine("Free Physical Memory : " + mo["freephysicalmemory"].ToString());
}
Regards,
Bhupi Bhai.
|
|
|
|
|
Got it now!:->
Here is what I'm using now:
[StructLayout(LayoutKind.Sequential)]
class MEMORYSTATUS
{
public IntPtr dwLength;
public IntPtr dwMemoryLoad;
public IntPtr dwTotalPhys;
public IntPtr dwAvailPhys;
public IntPtr dwTotalPageFile;
public IntPtr dwAvailPageFile;
public IntPtr dwTotalVirtual;
public IntPtr dwAvailVirtual;
}
[DllImport("kernel32.dll", CharSet = CharSet.Unicode,CallingConvention = CallingConvention.Winapi, EntryPoint = "GlobalMemoryStatus")]
private static extern void GlobalMemoryStatus([In,MarshalAs(UnmanagedType.LPStruct)]MEMORYSTATUS lpBuffer);
Maybe somebody needs it.
Thanks for the replies.
All the best,
Martin
|
|
|
|
|
Hi all,
I am working on Windows Service Application.I want to call a webservice and to retrive Output xmlfile values generated by the webservice.
I have done the same in Windows Application.It worked.
but if i use the same code in Windows Service,i got this System.Net.WebException.
//to call the Webservice
localhost.Service service = new SDSettingsServices.localhost.Service();<br />
<br />
service.GetSNCompleted += new SDSettingsServices.localhost.GetSNCompletedEventHandler(service_SN);<br />
<br />
service.GetSNAsync(Corpname, divisionname);
public void service_SN(object o, SDSettingsServices.localhost.GetSNCompletedEventArgs e)<br />
{<br />
string serial = e.Result.SerialNo;<br />
}<br />
<br />
PLz help me to find out the exception.
Is there any other method to call a webservice from Windows Service..
Thanks in Advance,
cheers
sangeet
|
|
|
|
|
What was the error message in the WebException?
---
b { font-weight: normal; }
|
|
|
|
|
Thanks for ur Reply..
i got this error.
WebException was unhandled/
The request failed with HTTP status 403: Forbidden.
cheers
sangeet
|
|
|
|
|
Please check the account under which the service is running. By default windows applications runs under the currently logged on user's credentilas who is mostly having all access. But when you run windows service there are different account under which you can run the service.
Jayant D. Kulkarni
Brainbench Certified Software Engineer in C#, ASP.NET, .NET Framework and ADO.NET
|
|
|
|
|
Thanks for ur suggestions..it worked..
cheers
sangeet
|
|
|
|