Pad zeroes first field in a Delimited file

Need help. I tried using an awk command to pad zeroes. Unfortunately, the "|" pipe delimited character is gone when I tried to write the records to another file.

awk -F \| ' {$1=sprintf("%06s", $1); print $0}' $CUSTFINAL2 > $CUSTFINAL3

BEFORE
"KEYRECORD"|"SA ID"|"PER ID"|"SP ID"|"ACCT ID"|"PREM ID"|"PHONE"|"NAME"|"Name"|"MAIL ADDR1"|"MAIL ADDR2"|"MAIL CITY"|"MAIL STATE"|"MAIL 
1|"          "|"          "|"3197691605"|"          "|"3197691657"|"                              "|"OCCUPANT                                                        
2|"          "|"          "|"3246309010"|"          "|"3246309029"|"                              "|"OCCUPANT                               
3|"          "|"          "|"3350909705"|"          "|"3311776290"|"                              "|"OCCUPANT                                                        
3|"          "|"          "|"3311776205"|"          "|"3311776290"|"                              "|"OCCUPANT                                                        

AFTER
"KEYRECORD" "SA ID" "PER ID" "SP ID" "ACCT ID" "PREM ID" "PHONE" "NAME" "Name" "MAIL ADDR1" "MAIL ADDR2" "MAIL CITY" "MAIL STATE" "MAIL 
000001 "          " "          " "3197691605" "          " "3197691657" "                              " "OCCUPANT                                                        
000002 "          " "          " "3246309010" "          " "3246309029" "                              " "OCCUPANT                                                        
000003 "          " "          " "3350909705" "          " "3311776290" "                              " "OCCUPANT                                                        
000003 "          " "          " "3311776205" "          " "3311776290" "                              " "OCCUPANT                                                        
000004 "          " "          " "3329099805" "          " "3329099858" "                              " "OCCUPANT                                                        

Set OFS:

awk -F \| ' {$1=sprintf("%06d", $1); print $0}' OFS=\| $CUSTFINAL2 > $CUSTFINAL3

So much thanks Chubler_XL !!!!

---------- Post updated at 07:56 PM ---------- Previous update was at 07:29 PM ----------

Can I use printf in this awk to pad my variable 'n' counter???

	awk -F \| '
	    NR == 1 { print "\"KEYRECORD\"|" $0; next; }
	    {
       	 if( $4 == "\"          \"" && last5 != $5) {
       	     n++;
	        } 

	        print n "|" $0;
	        last = $4;
	        last5 = $5;

	    }
	'  $CUSTFINAL > $CUSTFINAL2

Yes just use:

printf "%06d|%s\n", n, $0