Bug of float/double number operation in mfc 9.0 ???

Hi,
I am using visual studio 2008.
I have statement as follows:

	double a = 17745.0;
	double b = 18200.0;
	double c = 14560.0;
	double d = 18200.0;

	double x = (a*b) - (c*d);

x should be = 57967000, but its result = 57967008

Anybody know why this problem occurs?

Thanks in advance!
0
Saitama (11)
7/4/2008 1:58:28 AM
vc.mfc 33608 articles. 0 followers. Follow

9 Replies
535 Views

Similar Articles

[PageSpeed] 44

No.  I just ran the calculations in my Floating Point Explorer and the value I get is
57967000.  What you neglected to show here was the means you used to ascertain this
result, so there is insufficent information to replicate this.
					joe

On Thu, 3 Jul 2008 18:58:28 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:

>Hi,
>I am using visual studio 2008.
>I have statement as follows:
>
>	double a = 17745.0;
>	double b = 18200.0;
>	double c = 14560.0;
>	double d = 18200.0;
>
>	double x = (a*b) - (c*d);
>
>x should be = 57967000, but its result = 57967008
>
>Anybody know why this problem occurs?
>
>Thanks in advance!
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
0
newcomer (15972)
7/4/2008 2:55:23 AM
I put this little code in new project, but its result is OK.
I am using mfc ribbon and directx in my project.

Any suggestions are very welcome, thanks!

"Saitama" wrote:

> Hi,
> I am using visual studio 2008.
> I have statement as follows:
> 
> 	double a = 17745.0;
> 	double b = 18200.0;
> 	double c = 14560.0;
> 	double d = 18200.0;
> 
> 	double x = (a*b) - (c*d);
> 
> x should be = 57967000, but its result = 57967008
> 
> Anybody know why this problem occurs?
> 
> Thanks in advance!
0
Saitama (11)
7/4/2008 2:56:03 AM
Sorry it was not so clear. Ok I will put a passage of the code:

	there are few lines code before here....

	//###################################################
	double a = 17745.0;
	double b = 18200.0;
	double c = 14560.0;
	double d = 18200.0;

	double x = (a*b) - (c*d); 	// the result = 57967000!!!
	//###################################################

	D3DPRESENT_PARAMETERS m_prstprm;

	//	Set parameter of Direct3D
	ZeroMemory( &m_prstprm, sizeof( m_prstprm ) );

	m_prstprm.BackBufferWidth = 100;
	m_prstprm.BackBufferHeight = 100;
	m_prstprm.BackBufferFormat = D3DFMT_A8R8G8B8;
	m_prstprm.BackBufferCount = 1;
	m_prstprm.MultiSampleType = D3DMULTISAMPLE_NONE;
	m_prstprm.MultiSampleQuality = 0;
	m_prstprm.SwapEffect = D3DSWAPEFFECT_DISCARD;
	m_prstprm.hDeviceWindow = m_hWnd;
	m_prstprm.Windowed = TRUE;
	m_prstprm.EnableAutoDepthStencil = TRUE;
	m_prstprm.AutoDepthStencilFormat = dpthfmt;
	m_prstprm.Flags = D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL;
	m_prstprm.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
	m_prstprm.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;

	//###################################################
	x = (a*b) - (c*d); 	// the result still = 57967000!!!
	//###################################################

	//	Create 3D device
	ASSERT( m_pD3DDev == NULL );

	if( FAILED( m_pD3DObj->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, 
m_prstprm.hDeviceWindow, dwBehavior, &m_prstprm, &m_pD3DDev ) ) || m_pD3DDev 
== NULL )
		return D3DErr_CantCreateDevice;
	
	//###################################################
	x = (a*b) - (c*d); 	// the result still = 57967008 !!! (CHANGED!!!)
	//###################################################

	there are few lines code after here....

May be because of DirectX initialization error? 

Thanks in advance!!!

"Joseph M. Newcomer" wrote:

> No.  I just ran the calculations in my Floating Point Explorer and the value I get is
> 57967000.  What you neglected to show here was the means you used to ascertain this
> result, so there is insufficent information to replicate this.
> 					joe
> 
> On Thu, 3 Jul 2008 18:58:28 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:
> 
> >Hi,
> >I am using visual studio 2008.
> >I have statement as follows:
> >
> >	double a = 17745.0;
> >	double b = 18200.0;
> >	double c = 14560.0;
> >	double d = 18200.0;
> >
> >	double x = (a*b) - (c*d);
> >
> >x should be = 57967000, but its result = 57967008
> >
> >Anybody know why this problem occurs?
> >
> >Thanks in advance!
> Joseph M. Newcomer [MVP]
> email: newcomer@flounder.com
> Web: http://www.flounder.com
> MVP Tips: http://www.flounder.com/mvp_tips.htm
> 
0
Saitama (11)
7/4/2008 4:35:02 AM
Anyone who have experiences handling DirectX and have ever encountered this 
kind of problem (causing floating point number's problem), please share if 
there are any suggestions. Thanks a lot!

"Saitama" wrote:

> Sorry it was not so clear. Ok I will put a passage of the code:
> 
> 	there are few lines code before here....
> 
> 	//###################################################
> 	double a = 17745.0;
> 	double b = 18200.0;
> 	double c = 14560.0;
> 	double d = 18200.0;
> 
> 	double x = (a*b) - (c*d); 	// the result = 57967000!!!
> 	//###################################################
> 
> 	D3DPRESENT_PARAMETERS m_prstprm;
> 
> 	//	Set parameter of Direct3D
> 	ZeroMemory( &m_prstprm, sizeof( m_prstprm ) );
> 
> 	m_prstprm.BackBufferWidth = 100;
> 	m_prstprm.BackBufferHeight = 100;
> 	m_prstprm.BackBufferFormat = D3DFMT_A8R8G8B8;
> 	m_prstprm.BackBufferCount = 1;
> 	m_prstprm.MultiSampleType = D3DMULTISAMPLE_NONE;
> 	m_prstprm.MultiSampleQuality = 0;
> 	m_prstprm.SwapEffect = D3DSWAPEFFECT_DISCARD;
> 	m_prstprm.hDeviceWindow = m_hWnd;
> 	m_prstprm.Windowed = TRUE;
> 	m_prstprm.EnableAutoDepthStencil = TRUE;
> 	m_prstprm.AutoDepthStencilFormat = dpthfmt;
> 	m_prstprm.Flags = D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL;
> 	m_prstprm.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
> 	m_prstprm.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
> 
> 	//###################################################
> 	x = (a*b) - (c*d); 	// the result still = 57967000!!!
> 	//###################################################
> 
> 	//	Create 3D device
> 	ASSERT( m_pD3DDev == NULL );
> 
> 	if( FAILED( m_pD3DObj->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, 
> m_prstprm.hDeviceWindow, dwBehavior, &m_prstprm, &m_pD3DDev ) ) || m_pD3DDev 
> == NULL )
> 		return D3DErr_CantCreateDevice;
> 	
> 	//###################################################
> 	x = (a*b) - (c*d); 	// the result still = 57967008 !!! (CHANGED!!!)
> 	//###################################################
> 
> 	there are few lines code after here....
> 
> May be because of DirectX initialization error? 
> 
> Thanks in advance!!!
> 
> "Joseph M. Newcomer" wrote:
> 
> > No.  I just ran the calculations in my Floating Point Explorer and the value I get is
> > 57967000.  What you neglected to show here was the means you used to ascertain this
> > result, so there is insufficent information to replicate this.
> > 					joe
> > 
> > On Thu, 3 Jul 2008 18:58:28 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:
> > 
> > >Hi,
> > >I am using visual studio 2008.
> > >I have statement as follows:
> > >
> > >	double a = 17745.0;
> > >	double b = 18200.0;
> > >	double c = 14560.0;
> > >	double d = 18200.0;
> > >
> > >	double x = (a*b) - (c*d);
> > >
> > >x should be = 57967000, but its result = 57967008
> > >
> > >Anybody know why this problem occurs?
> > >
> > >Thanks in advance!
> > Joseph M. Newcomer [MVP]
> > email: newcomer@flounder.com
> > Web: http://www.flounder.com
> > MVP Tips: http://www.flounder.com/mvp_tips.htm
> > 
0
Saitama (11)
7/4/2008 4:44:00 AM
Yes, I got the answer:

http://forums.msdn.microsoft.com/cs-CZ/vclanguage/thread/128f6fb7-098f-4c0f-ad96-edc8ecf82ec2/

Hope it can help others,

thank you!

"Saitama" wrote:

> Sorry it was not so clear. Ok I will put a passage of the code:
> 
> 	there are few lines code before here....
> 
> 	//###################################################
> 	double a = 17745.0;
> 	double b = 18200.0;
> 	double c = 14560.0;
> 	double d = 18200.0;
> 
> 	double x = (a*b) - (c*d); 	// the result = 57967000!!!
> 	//###################################################
> 
> 	D3DPRESENT_PARAMETERS m_prstprm;
> 
> 	//	Set parameter of Direct3D
> 	ZeroMemory( &m_prstprm, sizeof( m_prstprm ) );
> 
> 	m_prstprm.BackBufferWidth = 100;
> 	m_prstprm.BackBufferHeight = 100;
> 	m_prstprm.BackBufferFormat = D3DFMT_A8R8G8B8;
> 	m_prstprm.BackBufferCount = 1;
> 	m_prstprm.MultiSampleType = D3DMULTISAMPLE_NONE;
> 	m_prstprm.MultiSampleQuality = 0;
> 	m_prstprm.SwapEffect = D3DSWAPEFFECT_DISCARD;
> 	m_prstprm.hDeviceWindow = m_hWnd;
> 	m_prstprm.Windowed = TRUE;
> 	m_prstprm.EnableAutoDepthStencil = TRUE;
> 	m_prstprm.AutoDepthStencilFormat = dpthfmt;
> 	m_prstprm.Flags = D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL;
> 	m_prstprm.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
> 	m_prstprm.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
> 
> 	//###################################################
> 	x = (a*b) - (c*d); 	// the result still = 57967000!!!
> 	//###################################################
> 
> 	//	Create 3D device
> 	ASSERT( m_pD3DDev == NULL );
> 
> 	if( FAILED( m_pD3DObj->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, 
> m_prstprm.hDeviceWindow, dwBehavior, &m_prstprm, &m_pD3DDev ) ) || m_pD3DDev 
> == NULL )
> 		return D3DErr_CantCreateDevice;
> 	
> 	//###################################################
> 	x = (a*b) - (c*d); 	// the result still = 57967008 !!! (CHANGED!!!)
> 	//###################################################
> 
> 	there are few lines code after here....
> 
> May be because of DirectX initialization error? 
> 
> Thanks in advance!!!
> 
> "Joseph M. Newcomer" wrote:
> 
> > No.  I just ran the calculations in my Floating Point Explorer and the value I get is
> > 57967000.  What you neglected to show here was the means you used to ascertain this
> > result, so there is insufficent information to replicate this.
> > 					joe
> > 
> > On Thu, 3 Jul 2008 18:58:28 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:
> > 
> > >Hi,
> > >I am using visual studio 2008.
> > >I have statement as follows:
> > >
> > >	double a = 17745.0;
> > >	double b = 18200.0;
> > >	double c = 14560.0;
> > >	double d = 18200.0;
> > >
> > >	double x = (a*b) - (c*d);
> > >
> > >x should be = 57967000, but its result = 57967008
> > >
> > >Anybody know why this problem occurs?
> > >
> > >Thanks in advance!
> > Joseph M. Newcomer [MVP]
> > email: newcomer@flounder.com
> > Web: http://www.flounder.com
> > MVP Tips: http://www.flounder.com/mvp_tips.htm
> > 
0
Saitama (11)
7/4/2008 4:58:00 AM
I don't know why people who ask questions cannot provide all the important information
necessary to answer the question.  The result of your computation was NOT the value you
described.  The result of your computation COMBINED WITH a DirectX call produced a
different result in a field that belongs to the DirectX logic.  Please try to post the
COMPLETE question, not some random fragment that is misleading.

It seems obvious here that what is going on is that DirectX is modifying the value for
some reason, most likely to take into account rounding errors in the float-to-pixel
conversion; having done a float-to-pixel conversion, it probably does a pixel-to-float
conversion and gets the new result as the consequence of pixel rounding computations.

In which case, there is nothing to be overly concerned about.  You are probably seeing
expected behavior.
					joe

On Thu, 3 Jul 2008 21:35:02 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:

>Sorry it was not so clear. Ok I will put a passage of the code:
>
>	there are few lines code before here....
>
>	//###################################################
>	double a = 17745.0;
>	double b = 18200.0;
>	double c = 14560.0;
>	double d = 18200.0;
>
>	double x = (a*b) - (c*d); 	// the result = 57967000!!!
>	//###################################################
>
>	D3DPRESENT_PARAMETERS m_prstprm;
>
>	//	Set parameter of Direct3D
>	ZeroMemory( &m_prstprm, sizeof( m_prstprm ) );
>
>	m_prstprm.BackBufferWidth = 100;
>	m_prstprm.BackBufferHeight = 100;
>	m_prstprm.BackBufferFormat = D3DFMT_A8R8G8B8;
>	m_prstprm.BackBufferCount = 1;
>	m_prstprm.MultiSampleType = D3DMULTISAMPLE_NONE;
>	m_prstprm.MultiSampleQuality = 0;
>	m_prstprm.SwapEffect = D3DSWAPEFFECT_DISCARD;
>	m_prstprm.hDeviceWindow = m_hWnd;
>	m_prstprm.Windowed = TRUE;
>	m_prstprm.EnableAutoDepthStencil = TRUE;
>	m_prstprm.AutoDepthStencilFormat = dpthfmt;
>	m_prstprm.Flags = D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL;
>	m_prstprm.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
>	m_prstprm.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
>
>	//###################################################
>	x = (a*b) - (c*d); 	// the result still = 57967000!!!
>	//###################################################
>
>	//	Create 3D device
>	ASSERT( m_pD3DDev == NULL );
>
>	if( FAILED( m_pD3DObj->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, 
>m_prstprm.hDeviceWindow, dwBehavior, &m_prstprm, &m_pD3DDev ) ) || m_pD3DDev 
>== NULL )
>		return D3DErr_CantCreateDevice;
>	
>	//###################################################
>	x = (a*b) - (c*d); 	// the result still = 57967008 !!! (CHANGED!!!)
>	//###################################################
>
>	there are few lines code after here....
>
>May be because of DirectX initialization error? 
>
>Thanks in advance!!!
>
>"Joseph M. Newcomer" wrote:
>
>> No.  I just ran the calculations in my Floating Point Explorer and the value I get is
>> 57967000.  What you neglected to show here was the means you used to ascertain this
>> result, so there is insufficent information to replicate this.
>> 					joe
>> 
>> On Thu, 3 Jul 2008 18:58:28 -0700, Saitama <Saitama@discussions.microsoft.com> wrote:
>> 
>> >Hi,
>> >I am using visual studio 2008.
>> >I have statement as follows:
>> >
>> >	double a = 17745.0;
>> >	double b = 18200.0;
>> >	double c = 14560.0;
>> >	double d = 18200.0;
>> >
>> >	double x = (a*b) - (c*d);
>> >
>> >x should be = 57967000, but its result = 57967008
>> >
>> >Anybody know why this problem occurs?
>> >
>> >Thanks in advance!
>> Joseph M. Newcomer [MVP]
>> email: newcomer@flounder.com
>> Web: http://www.flounder.com
>> MVP Tips: http://www.flounder.com/mvp_tips.htm
>> 
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
0
newcomer (15972)
7/4/2008 4:43:40 PM
>
> http://forums.msdn.microsoft.com/cs-CZ/vclanguage/thread/128f6fb7-098f-4c0f-ad96-edc8ecf82ec2/
>
> Hope it can help others,
>
> thank you!

Holy criminy! Mother of God... this is a disaster!

Tell me, do you know of a way to set this bool using the DX7 interface? I 
don't have the DX7 help (or even SDK) installed on my system, but I am using 
that interface (or rather the graphics engine I am using is) for my 
products. Of course your calculation gave the expected wrong answer 
"57967008.0" for me and (as far as I know) I have no way to bring the FPU 
back to full precision other than perhaps _controlfp_s with some appropriate 
flag. I guess I should just give _clearfp a go and see what effect *that* 
has... although I really don't like the idea of going behind Direct3D's back 
(as they have mine incidentally) and altering the rules of mathematics 
arbitrarily.

- Alan Carre


0
alan314 (63)
7/5/2008 2:37:47 PM
On Jul 5, 7:37=A0am, "Alan Carre" <a...@twilightgames.com> wrote:
> >http://forums.msdn.microsoft.com/cs-CZ/vclanguage/thread/128f6fb7-098...
>
> > Hope it can help others,
>
> > thank you!
>
> Holy criminy! Mother of God... this is a disaster!
>
> Tell me, do you know of a way to set this bool using the DX7 interface? I
> don't have the DX7 help (or even SDK) installed on my system, but I am us=
ing
> that interface (or rather the graphics engine I am using is) for my
> products. Of course your calculation gave the expected wrong answer
> "57967008.0" for me and (as far as I know) I have no way to bring the FPU
> back to full precision other than perhaps _controlfp_s with some appropri=
ate
> flag. I guess I should just give _clearfp a go and see what effect *that*
> has... although I really don't like the idea of going behind Direct3D's b=
ack
> (as they have mine incidentally) and altering the rules of mathematics
> arbitrarily.
>
> - Alan Carre

Try using D3DCREATE_FPU_PRESERVE in the BehaviorFlags when you
CreateDevice the device.

See "IDirect3D9::CreateDevice" at http://msdn.microsoft.com/en-us/library/b=
b174313(VS.85).aspx
and the D3DCREATE structure at http://msdn.microsoft.com/en-us/library/bb17=
2527(VS.85).aspx

Note that this will probably have the effect of a slow-down to
DirectX, and there's a note in the docs that "unmasking floating-point
unit exceptions may result in undefined behavior".
0
7/5/2008 4:53:58 PM
"Malachy Moses" <malachy.moses@gmail.com> wrote in message 
news:172329c7-8532-467e-8b03-35a97439893a@y21g2000hsf.googlegroups.com...
On Jul 5, 7:37 am, "Alan Carre" <a...@twilightgames.com> wrote:
> >http://forums.msdn.microsoft.com/cs-CZ/vclanguage/thread/128f6fb7-098...
>
> > Hope it can help others,
>
> > thank you!
>
> Holy criminy! Mother of God... this is a disaster!
>
> Tell me, do you know of a way to set this bool using the DX7 interface? I
> don't have the DX7 help (or even SDK) installed on my system, but I am 
> using
> that interface (or rather the graphics engine I am using is) for my
> products. Of course your calculation gave the expected wrong answer
> "57967008.0" for me and (as far as I know) I have no way to bring the FPU
> back to full precision other than perhaps _controlfp_s with some 
> appropriate
> flag. I guess I should just give _clearfp a go and see what effect *that*
> has... although I really don't like the idea of going behind Direct3D's 
> back
> (as they have mine incidentally) and altering the rules of mathematics
> arbitrarily.
>
> - Alan Carre

>Try using D3DCREATE_FPU_PRESERVE in the BehaviorFlags when you
>CreateDevice the device.

Yes, I know about the flag, but what I'm saying is that (lacking 
documentation) I do not know what to pass to the *DX7* interface. There's no 
"D3D8" CreateDevice called for me, only some DX7 version, which I don't 
think has the same "Behaviour flags" field (remember, this is a pretty old 
interface...).

Here's essentially what the "D3D7" CreateDevice code is when I look it up:

 if(CheckDXError(mDD->QueryInterface(IID_IDirect3D7, (LPVOID*) 
&mD3D),"QueryInterface IID_IDirect3D7"))
  return false;

 if(CheckDXError(mD3D->CreateDevice(IID_IDirect3DHALDevice, mDDSDrawSurface, 
&mD3DDevice),"CreateDevice IID_IDirect3DHALDevice"))
  return false;

Where exactly would I insert the behaviour flag in this sequence? I assume 
it would have to be here at creation time no?

Thanks,
- Alan Carre



0
alan314 (63)
7/5/2008 11:14:17 PM
Reply:

Similar Artilces:

How to convert Excel imported numbers from text to numbers?
We have a software package from which we can export data to MS Excel. However, when exported it arrives in Excel as text. Even though they are numbers, they act like text. The only way to convert them text to numbers is to edit the cell (press F2) and hit enter. I've tried every other method of copying and pasting (even pasting special), but nothing seems to work. Any ideas? Copy an empty cell, select the import and paste special and select add -- Regards, Peo Sjoblom "Alden" <Alden@discussions.microsoft.com> wrote in message news:6559CB40-4CF3-4C55-8EC3-32...

namespaces and protected static members VC .NET bug?
I found bug when use namespaces in mfc application. When I wrote DECLARE_MESSAGE_MAP/BEGIN_MESSAGE_MAP in base (CDialog-derived) class A and in class B : public A (A and B in different namespaces). I narrowed this problem to simple peace of code: class A { protected: static int f; static int *p; public: A() {} ~A() {} }; int A::f = 1; int *A::p = NULL; namespace some { class A : public ::A { static int f; static int *p; public: A() {} ~A() {} }; int A::f = 2; int *A::p = &::A::f; // this line produces error } This code does not work, VC compiller said: error C2248...

MFC Resource-Chaining Breaking in inproc ATL COM Servers
This is a multi-part message in MIME format. ------=_NextPart_000_001E_01C34AEF.7FD8CE20 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable My problem is basically that resource-chaining appears sometimes to = break when I have an inproc MFC COM object (using ATL for the COM = stuff), which itself loads a 2nd inproc MFC COM object (also using ATL = for the COM stuff), and the first COM object is loaded by an MFC EXE. = The 2 DLL's and the EXE all link to the same DLL. All DLLs are coded to be MFC Extension DLL's. Below is a more d...

BUG? Outlook 2003 Not Responding
Hi all, I'm currently running Outlook 2003 (11.5608.5606) along with Active Sync 3.7 (Build 3083). I have the *Hide When Minimized* option set Outlook (thanks MS!) Since my upgrade, I've noticed the following behaviors: When my pocket-pc is disconnected/off: If I *minimize* Outlook, it hides itself in the system tray, and can (almost) always be restored. If I *close* Outlook closes, and can be restarted. When my pocket-pc is connected/on: If I *minimize* Outlook, it hides itself in the system tray, and can (almost) always be restored. However if I *close* Outlook Outlook minimizes ...

BIN2DEC conversion for large binary numbers
Hello All, I need your help, i want to convert large binary numbers using excel but whenever i use the BIN2DEC function the result is negative which is not correct. Ex. BIN2DEC(1100110110) the result is -202 but if i use the calculator the result is 822 which is the correct value Any ideas? what shall i do to have the correct value? Thanks in advance A.M. Hi, Well I think it's 822 and my calculator confirms that and like you I get -202. Someone will no doubt explain why but in the meantime use this =SUMPRODUCT(MID("0"&A1,ROW(INDIRECT("1:"&a...

Transactions By Category Report Bug (Money 2005)
All, I'm experiencing a problem that I can't seem to work around and I hope somebody can help me out. I ran the transaction by category report and selected category A. I then went to the category setup screen and moved category A into B. I then went back to the transactions by category report and this time it won't open. Instead, it acts like it's going to open, but then immediately reverts back to the report menu screen. I'm pretty sure it's doing that because the last selected category the report ran was for category A and that category doesn't exist anymore...

OL2003 Signature Bug?
I have four pop-mail accounts in a single profile. I'll call the Accounts A, B, C, and D. "A" is the default account. In OL2003, you are able to create a different signature for each account. I have created "New Message" and "Reply-to/Forward Message" signatures for two of the accounts (A and C). When creating a new message, the signature for A appears correctly by default. If I switch the "send from" account to C, the signature for C replaces the signature for A. This is expected. If instead, I switch to accounts B or D, the signature...

how I can format a number like hundreds, thoudsands
I am from INdia and need to format the numbers in Indian style like comma sepration based on hundreds, thousand pattern Very first hit on Google searching for Format and Indian:- From a Google search here is a reply by David Richie to the same question in January If you have Excel 2002 or later look up bhattext in help. Otherwise the following format might help you [>=10000000]##\,##\,##\,##0.00;[>=100000]##\,##\,##0.00;##,##0.00 (This format separates groups for India/Thailand, format valid for positive numbers up to 99,99,99,999.99 or 999,999,999.99) in Excel XP see function Bh...

Problem with 3.0 Client installation
When I try to install the Outlook client for CRM, the installation tells me that Outlook is not installed. I have Outlook 2003 with Office SP2 installed. Everything should be fine. Any ideas? Have you started outlook from the user you are logged into the system as? -- Matt Parks MVP - Microsoft CRM "Joggel" <Joggel@discussions.microsoft.com> wrote in message news:F321754B-523B-44EC-9A7B-606D6BF8224D@microsoft.com... When I try to install the Outlook client for CRM, the installation tells me that Outlook is not installed. I have Outlook 2003 with Office SP2 inst...

Question about "Float Invalid Operation"
I've got an app written in C++, in some c'tor I wish to set a member variable as "quiet not a number" #define QNAN (HUGE/HUGE) class CTest : public ... { double m_dTest; } CTest::CTest() { m_dTest = QNAN; // mark } Runs fine under NT based Windows. A customer however installed the app at a Win98 machine and it crashed with some 0xC0000090 "Float Invalid Operation" error at the marked line. So here are my questions about this: 1. Does Win9x handle HUGE/HUGE other than NT based systems? 2. Is it likely that the error occurs only at...

FRx Error 0
Hi, When i try to login to FRx reports, its asks me for the user name and password. I type in the correct user name and password. then it gives me a following error message. (IsSysReg) Error 0: Any help is highly appriciated Hi It looks like there is a problem with the registry entry for FRX. Have you applied the latest FRX service packs? Regards James "Ranga" <Ranga@discussions.microsoft.com> wrote in message news:1D7C1724-CF53-4DB4-8F7B-DDAD7167C988@microsoft.com... > Hi, > > When i try to login to FRx reports, its asks me for the user name and >...

Exporting OL2k contacts so street number and name go into different fields?
Our local residents association has each subscriber listed as a separate contact in Outlook 2k. We want to print labels for a mailing by volunteers and it would be a big help to pre-sort the envelopes by street name first. Problem is I can't see how to do it. I tried exporting the contacts as a 'Windows csv' file and opened it in Excel 2k hoping to sort on street name. But, although town and postcode appear correctly in the fields 'Business City' and 'Business Postcode', all of the rest, say '1 Acacia Gardens, Suburbia', goes into 'Business Street'...

Money 2006 net worth bug
I have noticed that one of my net worth over time favorite reports refuses to load. If I watch the CPU, it appears that $ is in an infinite loop with the load bouncing back and forth between 50 and 80%. But the really amusing thing is this: during the loop if I select "custom date", change either the start or stop date (move either to a new date, or just touch one - change a date and move it back) and select the APPLY button, the load will converge. If you select the OK button, the load will not converge. I have saved a net worth report that converges and attempted to reload...

Page Number Problem It resets to 1 of 1
I have Word 2007, Vista. I have added a page number (built in format, at position, x of y) in a header first page (different), it is in a table. The page number (x of y) is also in the footer (which is blank on the 'different' first page). The footer page number works fine. If i put the page number in the rest of the page headers, it works fine. Problem - the page number in the first page header automatically updates as pages are added, deleted. But, when the docx is closed and then reopened it resets the x of y in the first page header to 1 of 1. If i click in the...

VC 6.0 can't handle use an include directory that has spaces in na
i have an environment variable, BUILPATH which has a value of "C:\app build path\common". in a VC++ 6.0 project I use the BUILPATH variable to point to where my include directory is located. i then have a #import statement in the stdfx.h where i just use the tlb's file name. however when i go to compile the project i get : command line warnings D4024 : unrecognized source file type 'build' command line warnings D4024 : unrecognized source file type 'path\common\include /I C:\app' command line warnings D4024 : unrecognized source file type 'build' c...

intergrating row number into a formula
Ok gurus, Here's another one. I want to pull a value out of a certain column based on the row that the formula is in. For example: -The desired value is in A column (number value) -The row() function will return the row that the formula is in -Lets say row returns 13 -I would like to retreive the text value in A13 dynamically using row() within the formula.....something like ="S_"&"5133"&"_"&TEXT(C3,"dd") -The "5133" would be the text value of the number from A13 as determined by row Sorry if these are noob ques...

Format numbers in Textbox
I have a textbox that is linked to a cell. That cell contains currency type data. How do I set the formatting of the text box to carry over that data and format it with $ and ,'s Text boxes treat everything as text, even when entries appear numeric. So there is no built-in number formatting option available. -- Jim "stickandrock" <stickandrock@discussions.microsoft.com> wrote in message news:AD1D92B7-7079-4D18-81C4-A68CA58ADD20@microsoft.com... |I have a textbox that is linked to a cell. That cell contains currency type | data. How do I set the formatting of th...

Is this a bug or not?
I replied to an email that was archived in Outlook 2007. The 'sent' copy was placed in the archived sent folder instead of the one in my personal folders. Is this normal or a bug? Is there anyway that I configure responses to archived 'mails to be put in the current sent folder? TIA. Cheers, Guy ** Stress - the condition brought about by having to ** resist the temptation to beat the living daylights ** out of someone who richly deserves it. "Dr Teeth" wrote in message news:db8si3lpuejhnpm3luacpu2rkkaef66stt@4ax.com... > I replied to an email that was archiv...

Named Printers
Hello, We are using named printers with our Great Plains 6.0. I have 1 workstation that is not "releasing" the last printer setting. When she prints checks, which are assigned to a named printer, they come out just like they are supposed to. But, when she prints posting journals or anything else after that, it all goes to the check printer instead of her default printer. This worked for years until about 3 weeks ago. I can't find anything that may have changed. Can anyone think of a file that may have been wonkered or something? It's really a pain in the... -Tr...

Access 2007: bug? quick filter list is sometimes empty
Access 2007 has a great new feature which allows to easily filter by selecting different values from a drop down box on top of each column. However, sometimes the list of values simply is EMPTY in some columns. It seems that this has to do with the complexity of the underlying query. Does anyone know how to circumvent this? Or is it simply a bug? Kind regards Georg When the list of unique choices gets too big they don't show. You have some control over this office button/access options/current database/Filter lookup options (look at bottom of screen). It takes tim...

Page Numbering #18
I need the automatic page numbering to start off as double numbers, ie 01,02,03,04,05 etc. Is this possible? Insert, section, scroll to the bottom of the Number Format drop down. -- Mary Sauer MSFT MVP http://office.microsoft.com/ http://msauer.mvps.org/ news://msnews.microsoft.com "sophie" <sophie@discussions.microsoft.com> wrote in message news:49CFD919-C460-4F51-B167-0E5B32FBC9A5@microsoft.com... >I need the automatic page numbering to start off as double numbers, ie > 01,02,03,04,05 etc. Is this possible? ...

Bug in queue an activity association
When I see, for example, in my work queue, an email, and I make the following steps: 1. Open Email in New Window (from work item queue) 2. I delete email (not queue, just Email) 3. When I return to queue, even if I refresh, email is still there in my queue. 4. When I try to open email again from queue, I get error because record is not there anymore. Invistigatin further, I saw that ActivityParty and ActivityPointer tables doesn't have activityid, but queueitembase table has not deleted reference. This seems an error, and as workaround, I need to execute SQL directly (which btw is n...

floating footer
I have a spreadsheet that I'm always adding entries into. Is there a way for me to add a floating "count" at the bottom of my spreadsheet instead of the top of the spreadsheet? I need it to automatically drop as I keep adding records, instead of having to cut and past the formula as I keep heading down to the bottom of the spreadsheet. My formula goes like this: =COUNT(A:A) You could have a macro that you'd run to insert the row and adjust everything. But when I want to see things like this, I'll put the formulas in row 1, the headers in row 2 and then select A...

BUGS BUGS BUGS
Dear Microsoft. I can understand programming bugs - you invent, you create, everyone makes mistakes etc etc. But how on earth can you have bugs in financial calculations? Take Finance 101 book. Replicate formulas. DON"T CHANGE THEM! I have already complained about mistakes in calculating bond yields in M2005 (has it been fixed?) where accrued interest is simply disregarded in calculations. Performance calculations in multiple currencies ARE ALL WRONG!!! here is example "buy" any asset in the account which is in a currency different to your base (say base is US$ and a...

Counting number of days excluding certain values
I have a spreadsheet with a number of columns. Col A Col D Col AB Col AD Ref # Date Rec Days Open Date Closed 2281 4/30/10 11 2250 4/27/10 7 5/6/10 P2239 4/28/10 8 5/10/10 P2247 1/8/10 2 1/12/10 2258 4/23/10 16 I have a section for review time with two cells, one for 10 days or less and one for more than 10 days. Right now it does not distinguish between the "Offical" and "Preliminary" submittals. Preliminary submittals have a &quo...