hal!KfLowerIrql change data in system memory for SCSI miniport dri

Hi:
   I'm working with a SCSI miniport driver, and I encountered a very strange 
problem that I don't know how to handle. Plz help me figure it out, Thanks a 
lot!
   
   I'm trying to write a driver to present a ram disk. I have a FPGA based 
PCI card, but the RTL in FPGA is unable to handle the DMA operations. 
   So I define a byte array in DEVICE_EXTENSION to present a 16MB RAM. All 
the data transfers and DMA operations are between the array and system memory.

Question 1:
   
   I've finished the driver and it works almost successfully, but during the 
'format disk' process, a error occurred and the 'format disk' can not finish 
successfully.
   
   I use Bus Hound to capture the data during the 'format disk' process, and 
find out that during some WRITE and READ commands, the data read from ram 
disk is not the same as the data written!
   This must be the reason of the failure.
   
   So I use WinDbg to step to the location, it's 4 WRITE commands followed 
by 4 READ commands, each command has a data transfer length of 4KB, and the 
block address are 0x2a00,0x2a08,0x2a10,0x2a18.
   All the WRITE commands are written 0s to ram disk, so all the READ 
commands should send out 0s.
   
   I use View Memory in WinDbg to watch the address at Srb->DataBuffer and 
Call Stack to view the following function calls. 
   For the first READ command with block address 0x2a00 and transfer length 
of 4KB, I step to the end of my StartIo routine and find that the data in the 
memory are all 0s.
   That means that I have send the correct data to memory, but why the OS 
get a wrong data?
   
   So I continue with Step Out and watch memory closely, and I find that 
after SCSIPORT!ScsiPortFdoDispatch+0x270, the data in memory is been changed!
   
   To find out the exact location in SCSIPORT!ScsiPortFdoDispatch, I use 
Step Into for the next READ command, and the place where memory data been 
changed is hal!KfLowerIrql+0x17!
   
   The Call Stack in shown below:
      00 ML505_miniport!ML505StartIo +0xaf0 (FPO: [Non-Fpo]) (CONV: stdcall)
      01 SCSIPORT!SpStartIoSynchronized+0x14f (FPO: [Non-Fpo])
      02 SCSIPORT!SpSynchronizeExecution+0x20 (FPO: [Non-Fpo])
      03 SCSIPORT!SpBuildScatterGather+0x36b (FPO: [Non-Fpo])
      04 hal!HalAllocateAdapterChannel+0x126 (FPO: [Non-Fpo])
      05 nt!IoAllocateAdapterChannel+0x2a (FPO: [Non-Fpo])
      06 SCSIPORT!ScsiPortStartIo+0x23f (FPO: [Non-Fpo])
      07 nt!IoStartPacket+0x7d (FPO: [Non-Fpo])
      08 SCSIPORT!ScsiPortFdoDispatch+0x270 (FPO: [Non-Fpo])
      09 SCSIPORT!SpDispatchRequest+0x68 (FPO: [Non-Fpo])
      0a SCSIPORT!ScsiPortPdoScsi+0xec (FPO: [Non-Fpo])
      0b SCSIPORT!ScsiPortGlobalDispatch+0x1d (FPO: [Non-Fpo])
      WARNING: Stack unwind information not available. Following frames may 
be wrong.
      0c bhound5+0x1435
      0d bhound5+0x24e3
      0e bhound5+0x1486
      0f bhound5+0x14ad
      10 CLASSPNP!ServiceTransferRequest+0xe4 (FPO: [Non-Fpo])
      11 CLASSPNP!ClassReadWrite+0xff (FPO: [Non-Fpo])
      12 bhound5+0x1435
      13 nt!IopfCallDriver+0x31 (FPO: [0,0,0])
      14 nt!RawReadWriteDeviceControl+0x60 (FPO: [Non-Fpo])
      15 nt!RawDispatch+0x114 (FPO: [Non-Fpo])
      16 nt!IopfCallDriver+0x31 (FPO: [0,0,0])
      17 nt!IopSynchronousServiceTail+0x70 (FPO: [Non-Fpo])
      18 nt!NtReadFile+0x55d (FPO: [Non-Fpo])
      19 nt!KiFastCallEntry+0xfc (FPO: [0,0] TrapFrame @ bacefd64)   
   
   The commands are shown below:
      ML505_miniport!ML505StartIo+0xaf0:
      f7a75300 b001            mov     al,1
      1: kd> gu
      SCSIPORT!SpStartIoSynchronized+0x14f:
      f73c38eb 8ad8            mov     bl,al
      1: kd> gu
      SCSIPORT!SpSynchronizeExecution+0x20:
      f73c434e 8ad3            mov     dl,bl
      1: kd> gu
      SCSIPORT!SpBuildScatterGather+0x36b:
      f73c53f7 8bce            mov     ecx,esi
      1: kd> gu
      hal!HalAllocateAdapterChannel+0x126:
      806ea6e8 83f802          cmp     eax,2
      1: kd> gu
      nt!IoAllocateAdapterChannel+0x2a:
      804efee2 5d              pop     ebp
      1: kd> gu
      SCSIPORT!ScsiPortStartIo+0x23f:
      f73c564d 85c0            test    eax,eax
      1: kd> gu
      nt!IoStartPacket+0x7d:
      804f11fd eb22            jmp     nt!IoStartPacket+0xa1 (804f1221)
      1: kd> gu
      SCSIPORT!ScsiPortFdoDispatch+0x270:
      f73c4d04 8a4d0f          mov     cl,byte ptr [ebp+0Fh]
      1: kd> t
      SCSIPORT!ScsiPortFdoDispatch+0x273:
      f73c4d07 ff1518903cf7    call    dword ptr [SCSIPORT!_imp_KfLowerIrql 
(f73c9018)]
      1: kd> t
      hal!KfLowerIrql:
      806e7410 33c0            xor     eax,eax
      1: kd> t
      hal!KfLowerIrql+0x2:
      806e7412 8ac1            mov     al,cl
      1: kd> t
      hal!KfLowerIrql+0x4:
      806e7414 33c9            xor     ecx,ecx
      1: kd> t
      hal!KfLowerIrql+0x6:
      806e7416 8a8898736e80    mov     cl,byte ptr hal!HalpIRQLtoTPR 
(806e7398)[eax]
      1: kd> t
      hal!KfLowerIrql+0xc:
      806e741c 890d8000feff    mov     dword ptr ds:[0FFFE0080h],ecx
      1: kd> t
      hal!KfLowerIrql+0x12:
      806e7422 a18000feff      mov     eax,dword ptr ds:[FFFE0080h]
      1: kd> t
      hal!KfLowerIrql+0x17:
      806e7427 c3              ret
      1: kd> t
      SCSIPORT!ScsiPortFdoDispatch+0x279:
      f73c4d0d b803010000      mov     eax,103h
      
    After hal!KfLowerIrql+0x17, the data in memory is changed. 
      
    As can be seen from the Call Stack, Bus Hound start to work after 
SCSIPORT!ScsiPortGlobalDispatch+0x1d.
    So I can suspect that the OS is informed to get data from memory after 
SCSIPORT!ScsiPortGlobalDispatch+0x1d, and it can only find wrong data there.
    
    Who actually moved my cheese?
    Is it SCSIPORT!ScsiPortFdoDispatch or hal!KfLowerIrql? Or maybe there 
are still problems with my driver code?
    

Question 2:
    
    Scatter/Gather is closed in my driver, and I think that for non 
Scatter/Gather DMA operations, the host will give the data buffer a page 
aligned physical address.
    But I find it didn't work the way I expected, sometimes the physical 
address are page aligned, but sometimes not.
    
    For the READ operaion shown above in Question 1, the value of 
Srb->DataBuffer is 0xf79ac208,
    and the converted physical address using SCSIPortGetPhysicalAddress is 
0x20208, which is not even WORD aligned!
    
    Why this could happen? Is there and parameters I did not set correctly?



    Thanks for your patience to read through such a long article, and if u 
can share any idea about my issue, I'll be so grateful!!
    
    Thanks again and much appreciate!
0
Utf
9/7/2010 9:32:03 AM
development.device.drivers 941 articles. 0 followers. Follow

5 Replies
1072 Views

Similar Articles

[PageSpeed] 58

>Is it SCSIPORT!ScsiPortFdoDispatch or hal!KfLowerIrql? Or maybe there
>are still problems with my driver code? 

I would guess there are issues in the driver code. Perhaps the memory you 
think you own is freed and claimed by someone else and they are scribbling in 
the same area ? 

Satya
http://www.winprogger.com

"flyingfly" wrote:

> Hi:
>    I'm working with a SCSI miniport driver, and I encountered a very strange 
> problem that I don't know how to handle. Plz help me figure it out, Thanks a 
> lot!
>    
>    I'm trying to write a driver to present a ram disk. I have a FPGA based 
> PCI card, but the RTL in FPGA is unable to handle the DMA operations. 
>    So I define a byte array in DEVICE_EXTENSION to present a 16MB RAM. All 
> the data transfers and DMA operations are between the array and system memory.
> 
> Question 1:
>    
>    I've finished the driver and it works almost successfully, but during the 
> 'format disk' process, a error occurred and the 'format disk' can not finish 
> successfully.
>    
>    I use Bus Hound to capture the data during the 'format disk' process, and 
> find out that during some WRITE and READ commands, the data read from ram 
> disk is not the same as the data written!
>    This must be the reason of the failure.
>    
>    So I use WinDbg to step to the location, it's 4 WRITE commands followed 
> by 4 READ commands, each command has a data transfer length of 4KB, and the 
> block address are 0x2a00,0x2a08,0x2a10,0x2a18.
>    All the WRITE commands are written 0s to ram disk, so all the READ 
> commands should send out 0s.
>    
>    I use View Memory in WinDbg to watch the address at Srb->DataBuffer and 
> Call Stack to view the following function calls. 
>    For the first READ command with block address 0x2a00 and transfer length 
> of 4KB, I step to the end of my StartIo routine and find that the data in the 
> memory are all 0s.
>    That means that I have send the correct data to memory, but why the OS 
> get a wrong data?
>    
>    So I continue with Step Out and watch memory closely, and I find that 
> after SCSIPORT!ScsiPortFdoDispatch+0x270, the data in memory is been changed!
>    
>    To find out the exact location in SCSIPORT!ScsiPortFdoDispatch, I use 
> Step Into for the next READ command, and the place where memory data been 
> changed is hal!KfLowerIrql+0x17!
>    
>    The Call Stack in shown below:
>       00 ML505_miniport!ML505StartIo +0xaf0 (FPO: [Non-Fpo]) (CONV: stdcall)
>       01 SCSIPORT!SpStartIoSynchronized+0x14f (FPO: [Non-Fpo])
>       02 SCSIPORT!SpSynchronizeExecution+0x20 (FPO: [Non-Fpo])
>       03 SCSIPORT!SpBuildScatterGather+0x36b (FPO: [Non-Fpo])
>       04 hal!HalAllocateAdapterChannel+0x126 (FPO: [Non-Fpo])
>       05 nt!IoAllocateAdapterChannel+0x2a (FPO: [Non-Fpo])
>       06 SCSIPORT!ScsiPortStartIo+0x23f (FPO: [Non-Fpo])
>       07 nt!IoStartPacket+0x7d (FPO: [Non-Fpo])
>       08 SCSIPORT!ScsiPortFdoDispatch+0x270 (FPO: [Non-Fpo])
>       09 SCSIPORT!SpDispatchRequest+0x68 (FPO: [Non-Fpo])
>       0a SCSIPORT!ScsiPortPdoScsi+0xec (FPO: [Non-Fpo])
>       0b SCSIPORT!ScsiPortGlobalDispatch+0x1d (FPO: [Non-Fpo])
>       WARNING: Stack unwind information not available. Following frames may 
> be wrong.
>       0c bhound5+0x1435
>       0d bhound5+0x24e3
>       0e bhound5+0x1486
>       0f bhound5+0x14ad
>       10 CLASSPNP!ServiceTransferRequest+0xe4 (FPO: [Non-Fpo])
>       11 CLASSPNP!ClassReadWrite+0xff (FPO: [Non-Fpo])
>       12 bhound5+0x1435
>       13 nt!IopfCallDriver+0x31 (FPO: [0,0,0])
>       14 nt!RawReadWriteDeviceControl+0x60 (FPO: [Non-Fpo])
>       15 nt!RawDispatch+0x114 (FPO: [Non-Fpo])
>       16 nt!IopfCallDriver+0x31 (FPO: [0,0,0])
>       17 nt!IopSynchronousServiceTail+0x70 (FPO: [Non-Fpo])
>       18 nt!NtReadFile+0x55d (FPO: [Non-Fpo])
>       19 nt!KiFastCallEntry+0xfc (FPO: [0,0] TrapFrame @ bacefd64)   
>    
>    The commands are shown below:
>       ML505_miniport!ML505StartIo+0xaf0:
>       f7a75300 b001            mov     al,1
>       1: kd> gu
>       SCSIPORT!SpStartIoSynchronized+0x14f:
>       f73c38eb 8ad8            mov     bl,al
>       1: kd> gu
>       SCSIPORT!SpSynchronizeExecution+0x20:
>       f73c434e 8ad3            mov     dl,bl
>       1: kd> gu
>       SCSIPORT!SpBuildScatterGather+0x36b:
>       f73c53f7 8bce            mov     ecx,esi
>       1: kd> gu
>       hal!HalAllocateAdapterChannel+0x126:
>       806ea6e8 83f802          cmp     eax,2
>       1: kd> gu
>       nt!IoAllocateAdapterChannel+0x2a:
>       804efee2 5d              pop     ebp
>       1: kd> gu
>       SCSIPORT!ScsiPortStartIo+0x23f:
>       f73c564d 85c0            test    eax,eax
>       1: kd> gu
>       nt!IoStartPacket+0x7d:
>       804f11fd eb22            jmp     nt!IoStartPacket+0xa1 (804f1221)
>       1: kd> gu
>       SCSIPORT!ScsiPortFdoDispatch+0x270:
>       f73c4d04 8a4d0f          mov     cl,byte ptr [ebp+0Fh]
>       1: kd> t
>       SCSIPORT!ScsiPortFdoDispatch+0x273:
>       f73c4d07 ff1518903cf7    call    dword ptr [SCSIPORT!_imp_KfLowerIrql 
> (f73c9018)]
>       1: kd> t
>       hal!KfLowerIrql:
>       806e7410 33c0            xor     eax,eax
>       1: kd> t
>       hal!KfLowerIrql+0x2:
>       806e7412 8ac1            mov     al,cl
>       1: kd> t
>       hal!KfLowerIrql+0x4:
>       806e7414 33c9            xor     ecx,ecx
>       1: kd> t
>       hal!KfLowerIrql+0x6:
>       806e7416 8a8898736e80    mov     cl,byte ptr hal!HalpIRQLtoTPR 
> (806e7398)[eax]
>       1: kd> t
>       hal!KfLowerIrql+0xc:
>       806e741c 890d8000feff    mov     dword ptr ds:[0FFFE0080h],ecx
>       1: kd> t
>       hal!KfLowerIrql+0x12:
>       806e7422 a18000feff      mov     eax,dword ptr ds:[FFFE0080h]
>       1: kd> t
>       hal!KfLowerIrql+0x17:
>       806e7427 c3              ret
>       1: kd> t
>       SCSIPORT!ScsiPortFdoDispatch+0x279:
>       f73c4d0d b803010000      mov     eax,103h
>       
>     After hal!KfLowerIrql+0x17, the data in memory is changed. 
>       
>     As can be seen from the Call Stack, Bus Hound start to work after 
> SCSIPORT!ScsiPortGlobalDispatch+0x1d.
>     So I can suspect that the OS is informed to get data from memory after 
> SCSIPORT!ScsiPortGlobalDispatch+0x1d, and it can only find wrong data there.
>     
>     Who actually moved my cheese?
>     Is it SCSIPORT!ScsiPortFdoDispatch or hal!KfLowerIrql? Or maybe there 
> are still problems with my driver code?
>     
> 
> Question 2:
>     
>     Scatter/Gather is closed in my driver, and I think that for non 
> Scatter/Gather DMA operations, the host will give the data buffer a page 
> aligned physical address.
>     But I find it didn't work the way I expected, sometimes the physical 
> address are page aligned, but sometimes not.
>     
>     For the READ operaion shown above in Question 1, the value of 
> Srb->DataBuffer is 0xf79ac208,
>     and the converted physical address using SCSIPortGetPhysicalAddress is 
> 0x20208, which is not even WORD aligned!
>     
>     Why this could happen? Is there and parameters I did not set correctly?
> 
> 
> 
>     Thanks for your patience to read through such a long article, and if u 
> can share any idea about my issue, I'll be so grateful!!
>     
>     Thanks again and much appreciate!
0
Utf
9/7/2010 11:59:03 PM

"Satya" wrote:

> >Is it SCSIPORT!ScsiPortFdoDispatch or hal!KfLowerIrql? Or maybe there
> >are still problems with my driver code? 
> 
> I would guess there are issues in the driver code. Perhaps the memory you 
> think you own is freed and claimed by someone else and they are scribbling in 
> the same area ? 

But I didn't own the memory. I just use Srb->Databuffer which points to the 
data buffer for DMA data transmission, the system or upper driver allocated 
it for me and I fill in the data buffer with correct data. 
All the other operations before and after my StartIo routine are transparent 
to me and I can do nothing to affect them.
0
Utf
9/8/2010 1:44:03 AM
> But I didn't own the memory. I just use Srb->Databuffer which points =
to the=20

Have you set ->MapBuffers to TRUE in port config info?

--=20
Maxim S. Shatskih
Windows DDK MVP
maxim@storagecraft.com
http://www.storagecraft.com

0
Maxim
9/8/2010 12:04:25 PM
Yes, I did it. MapBuffers and NeedPhysicalAddresses are all set to TURE.

Not all the READ and WRITE commands ended up in a wrong result.
Just the 4 continous READ following 4 WRITE commands failed.

And I'm still very curious why the address at Srb->DataBuffer and the 
translated physical address are not page aligned...
Can this be the reason of the failure?

"Maxim S. Shatskih" wrote:

> > But I didn't own the memory. I just use Srb->Databuffer which points to the 
> 
> Have you set ->MapBuffers to TRUE in port config info?
> 
> -- 
> Maxim S. Shatskih
> Windows DDK MVP
> maxim@storagecraft.com
> http://www.storagecraft.com
> 
> .
> 
0
Utf
9/9/2010 1:05:03 AM
Can u help me to figure it out?

I'm really trapped by this problem.

Thank you and much appreciate!

"Maxim S. Shatskih" wrote:

> > But I didn't own the memory. I just use Srb->Databuffer which points to the 
> 
> Have you set ->MapBuffers to TRUE in port config info?
> 
> -- 
> Maxim S. Shatskih
> Windows DDK MVP
> maxim@storagecraft.com
> http://www.storagecraft.com
> 
> .
> 
0
Utf
9/13/2010 1:33:03 AM
Reply:

Similar Artilces:

can i carryover data automatically from page to page and how?
I am trying to set up a month-to-month data sheet. Can I set it up so that the accumulated total from one month carries over to the next? -- JimVT "JimVT" <JimVT@discussions.microsoft.com> wrote in message news:CA742954-561A-4714-AE23-DA5DD031656B@microsoft.com... >I am trying to set up a month-to-month data sheet. Can I set it up so that > the accumulated total from one month carries over to the next? > -- > JimVT Of course - at the top of sheet 2 in the required column type in =Sheet1!(Cell the total is in on sheet 1). if you are uncertain as to how to ...

Changes to the global template
Recently I had to start a new username because of some corrupted files. I was able to save my documents. However, everytime that I quit microsoft office a dialogue box appears and says: "Word cannot save changes to the global template because it was opened with read only access. Do you want to save the changes in a template with a different name?" Initially I tried to save it, because I was afraid that the changes to my document would not be saved. Now I click save, and the next dialogue box appears: "Microsoft Visual Basic" "Run-Time errror "5995" Word c...

Split Forms
Is it at all possible to hide the Data Sheet portion of a split form at run time in 2007? The only solution I have found is to play with the SplitFormSize property, but I am afraid that it does not support different display sizes. Any suggestions ? Thanks ...

Excel data disappeared after getting message about compatibility M
I tried to save changes to a spreadsheet, and received the following message: "Compatibility Report for New Customer List.xls Run on 4/6/2010 19:52 The following features in this workbook are not supported by earlier versions of Excel. These features may be lost or degraded when you save this workbook in an earlier file format. Minor loss of fidelity Some cells or styles in this workbook contain formatting that is not supported by the selected file format. These formats will be converted to the closest format available." I clicked OK, because fidelity is not imp...

Synchronize data across 2 sheets
Hi all Excel 2007 Workbook with a sheet called 2010 around 700 rows/records and a sheet called Previous around 5000 rows records. Both have 31 columns and identical column headers On the 2010 sheet there are records that have changed, how do I get the changed records details onto and overwite the same record on the Previous sheet. Not sure if it would help but each record has a unique reference number. How do i do this ? Hope this makes sense thanks for any help offered Hi If you know which colums are to be changed I would use vlookup function. Vlookup(lookup valu...

Language change in outlook express
Hi, I cannot change th language to english in outlook express by defult it has French. please help me how to change in options. i check all my regional settings shows english(us) execpt in word and express. -- Nisha P nishkrish <nishkrish@discussions.microsoft.com> wrote: > I cannot change th language to english in outlook express by defult > it has French. Ask in an Outlook Express newsgroup. microsoft.public.outlookexpress.general -- Brian Tillman [MVP-Outlook] nishkrish Ask in the Outlook Express newsgroups Outlook Express with IE7 http://www.microsoft.com/co...

Querying Excel data without another program
Hello, I'm an intermediate user of Excel, but I have lots of experience using Access. If you can give me clues on how to handle the information below using only Excel, I'd be grateful! I have a spreadsheet in Excel 97 in which there's a Worksheet named, "Datasource" with a column "B" containing repetitive data. I'd like to create a new worksheet in the same Excel file which shows a single instance of each item used in Column "B". If I were writing the query in SQL, I'd say "SELECT DISTINCT [Column B] FROM [MySpreadsheet]![Datasource...

How to total cells in a range with data input
Greetings to all members I am running Excel 97. An office colleague presented me with an issue that might be of interest to any Excel whiz and seasoned programmers. I would certainly appreciate any pointers in solving it. So here goes. The set of values includes 33 cells ranging from B4:D14. The data type is numeric. Data is only input in a few cells. QUESTION What would be the function to enter in, say, cell A15 to indicate the total number of cells in range B4:D14 that have received data input? Or does it involve some behind the scene VBA programming? EXAMPLE B6 = 9 C9 = 4 D11 ...

Insert Data From Multiple Worksheets Into One (With Criteria)
Ok, I have created a sales report list that tracks what customers we are contacting, how we are contacting them, if they are a new or existing customer and if we sent a quote, along with some other details. There is a worksheet the salesmen fills out for each day of the month (its linked to a calendar) and that all goes into a "dashboard" that shows the breakdown with graphs. Now what i would like to do is have another worksheet list all the customers that we sent quotes to so they can mark if the quote was won or lost , state sales projections and give reasons why won ...

change direction of cursor after enter
In excel 2003, how do I change cause the cursor to go the next cell to the right, rather than to go to the cell below? Thank you! Tools > Options > Edit > Move selection after Enter > select Right. -- HTH Sandy In Perth, the ancient capital of Scotland and the crowning place of kings sandymann2@mailinator.com Replace @mailinator.com with @tiscali.co.uk "duke" <jbrown2lt@msn.com> wrote in message news:9793815c-97dc-4894-9adc-f3c43d71c91d@i29g2000prf.googlegroups.com... > In excel 2003, how do I change cause the cursor to go the next cell to > the right,...

How-To: Last change date on row
When I set up a database I always include a last change date that auto updates every time any field in the record changes. Does anyone have a suggestion for how to achieve a similar function in a spreadsheet. i.e. put the current date/time in a field in the row whenever anything in the row changes? -- GGG ------------------------------------------------------------------------ GGG's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=29220 View this thread: http://www.excelforum.com/showthread.php?threadid=489447 GGG, For example, to put the last change date in...

Creating a word2000 document with access 2000 data
I have a database in access 2000 it is basically customer info. address and dates and timesof appointments. I need to place a button on the formpage that prints a letter using the customer details and the date & time entered in the database. Anyone have any clues as to the easiest way to do this.sort of done it using mailmerge but not what I want. Actually want a word document to pop up that the staff can just double check and press print. Any help would be appreciated even just a point in the right direction to a good source of information. to see if the following website's offer...

joining data points on graph
I am merging two graphs and one has 23 data points, the other has 9. The category axis will have 23 data points but the 9 points are spread out, i.e. they may be at points 1, 3, 7, 15 etc of the 23-point scale. At the moment the graph will only join points that are beside each other; how do I get them to connect to the points that have spaces between them? minihana wrote on Fri, 10 Feb 2006 11:29:04 -0800: m> I am merging two graphs and one has 23 data points, the m> other has 9. The category axis will have 23 data points but m> the 9 points are spread out, i.e. they may be...

Stop running sum(Over All) when customer change
Dear All I hv report based on tblTransaction which contains many customers with their transactions by date wise. I grouped report on CustomerID sub Group by Fromat(trnDate,”MMM-YY”) to get monthly transactions for each customer. I made calculated field to obtained closing balance with running sum over Group. I want to make the Running sum – over all but when customers is changing it must stop and start again, by default it will give running sum of all the customer, exactly this I don’t want. Any idea to stopped or make running sum based on customer when month is changing it ...

Dynamic data label placement for graphs
I've read the article KB179199 on how to create custom data labels for charts and it's good, however doesn't meet all my requirements. Is there a way to have the data labels automatically move to a desired location relative to the graph? For instance, I'm using 50 bar graphs per work book and would like each data label to be just above their respective bar. TIA Hafeez I looked up article 179199 and got this: BUG: Grid Based on .QPR File Appears Blank in Visual FoxPro 5.0 which probably isn't the one you meant. By above the bar, are they horizontal bars and you ...

How to change labels on a chart from numbers to words?
Can Someone Please help me? I can't figure out how to change the labels on my chart in excel from numbers to words! I'm not sure which labels you want to change to words, but maybe Jon Peltier's charting tutorial will help you: http://www.peltiertech.com/Excel/ChartsHowTo/index.html Arin wrote: > Can Someone Please help me? I can't figure out how to change the labels on my > chart in excel from numbers to words! -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html I suspect it's this page: http://peltiertech.com/...

Separating data in a column
the spreadsheet i am working on has 1 column with 2 possible answers, i.e. yes/no. what i need to do is separate the replies and then total the yes replies in another cell and also total no replies in a different cell. How do i do it? The following COUNTIF function can be used =COUNTIF($A$1:$A$21,"yes") The sort or data filter command can be used to separate the replies. "Gemgirl" wrote: > the spreadsheet i am working on has 1 column with 2 possible answers, i.e. > yes/no. what i need to do is separate the replies and then total the yes > replie...

Batch Number Changed
I recently upgraded GP from Ver. 8 to 10. few days back i notices that around 800 SOP orders transfered to One batch. This Batch was not existing before. system created the batch. How this could happen? i checked in the activity tracking table, no clues from there. ...

Change Password Next Login, Enforce Password Policy and Expiration
I'm curious why are the Change Password Next Login, Enforce Password Policy and Enforce Password Expiration is diabled in Greatplains 8.0 when i create a user. my client want to know how to enable it. hope for your prompt action. -- Jeremy Ayaay Technical Specialist STRC Only works for SQL 2005. If you client wants to use a beta database server... "Jher" wrote: > I'm curious why are the Change Password Next Login, Enforce Password Policy > and Enforce Password Expiration is diabled in Greatplains 8.0 when i create a > user. my client want to know how to enab...

change from SIZE ON DISK: 4:00kb
I am using publisher 2000. How can I can size on disk: 4:00KB into bigger number such as 16:00KB in "properties" menu. thank: nguyen You can't. The file size is what it is because of the content. Why do you want to change the file size? This won't help you to open it. If you are getting an error message, that's a different story. Are you running Norton Antivirus on your system? -- JoAnn Paules MVP Microsoft [Publisher] "nguyen" <anonymous@discussions.microsoft.com> wrote in message news:2b6401c4be29$c5da6f60$a301280a@phx.gbl... >I am using ...

Grouping Same Data in column
Hi Guys, Using: Excel 2000 Issue: Is there a way to create groupings based on same values down particular column. Example: I have phone numbers listed down column L. But some of th numbers appear more than once. Can I automatically create groups base on the same phone numbers so it would be easier on the eye to follow. Hope this makes sense. TIA Jonas :cool -- Message posted from http://www.ExcelForum.com You could sort the list by the phone numbers, and use conditional formatting to highlight the rows that contain a duplicate phone number: Select a cell in the list Choose Dat...

How to get combo box selected index changed event in another page from the existing page in winforms
Hi, I am working on windows forms project. I have two winforms (window1 and window2). I have a combobox called cmbEmail in window1 and Textbox called txtName in window2. I want to retrieve some information into the txtName in window2 when I selected something from cmbEmail in window1. If I write code to retrieve something into the txtName (which is in window2) in cmbEmail SelectedIndexchanged event in window1, I will get an error of txtName doesn't exist in this page. Can anybody help me to solve this problem.. Thanks and Regards Naresh "Naresh" &...

Merge data by macro
Hi all, I got data in column A and B as show below. Row A B ......col 1 ID DATA ...headings 2 XY01 Record 3 Time 4 Left 5 XY02 Time 6 Right 7 XY03 System 8 Record 9 Time 10 Left I need macro which should merge column B data and put result in column C as shown below Row A C ......col 1 ID DATA ...headings 2 XY01 Record Time Left 3 4 5 XY02 Time Right 6 7 XY03 System Record Ti...

format cell to change color when copied
I do alot of cut and pasting. Is there a code that will change the color of a cell if I right click to copy it, so I can track what I have worked on? Thanks, Tawnee -- tawnee jamison ------------------------------------------------------------------------ tawnee jamison's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=16137 View this thread: http://www.excelforum.com/showthread.php?threadid=346063 Tawnee Can be done, but you'll soon end up not knowing which was which. Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, _ Cancel As Boolean) ...

Viewing Spreadsheet Data
When viewing the spreadsheet data on a particular excel file, using a network. The spreadsheet file shows a blank sheet until viewed in print preview. The data is visible on one computer but not the other. The data prints OK but is not visible! Any suggestions? ...