| Title: | FOCUS, from INFORMATION BUILDERS |
| Moderator: | ZAYIUS::BROUILLETTE |
| Created: | Thu Feb 19 1987 |
| Last Modified: | Mon May 05 1997 |
| Last Successful Update: | Fri Jun 06 1997 |
| Number of topics: | 615 |
| Total number of notes: | 1779 |
I need some help in a modify procedure and I can't find a *clear*
answer in the book.
Here's the problem. I have a cost_center database. A child segment
within the cost_center is for function codes. I have a transaction
file of function codes. I want to update *all* cost centers with
the function code. This means reading every cost center and seeing
if any function code in the transaction file is a match.
I tried this:
FILEDEF REXDATA DISK [USMANDR.OGRADY]REXOUT.DAT
MODIFY FILE CCREF
FIXFORM L60F/2 CC/3 RT/1 RLIN/2 RG/2 RS/3 RPCT/5
NEXT CC
ON NEXT GOTO HOPE
ON NONEXT GOTO EXIT
CASE HOPE
MATCH L60F
ON MATCH INCLUDE
ON NOMATCH REJECT
ENDCASE
DATA ON REXDATA
END
but I only get the first occurrance of L60F to be updated. There
is still many other cost centers with that function that should be updated.
Any help would be greatful!
gog
| T.R | Title | User | Personal Name | Date | Lines |
|---|---|---|---|---|---|
| 245.1 | Need 2 more cases | NRPUR::CUSACK | Wed Jul 26 1989 16:31 | 33 | |
It appears to me that after it does 'CASE HOPE' once, that it is
just going to go back to the TOP and read the next transaction from
REXDATA. I would think that you need to do something more like
this
MODIFY FILE CCREF
FIXFORM L60F/2 CC/3 RT/1 RLIN/2 RG/2 RS/3 RPCT/5
GOTO WALK_CC
CASE WALK_CC
NEXT CC
ON NEXT GOTO HOPE
ON NONEXT GOTO STOP_CC
ENDCASE
CASE HOPE
MATCH L60F
ON MATCH INCLUDE
ON NOMATCH REJECT
GOTO WALK_CC
ENDCASE
CASE STOP_CC
GOTO TOP
ENDCASE
DATA ON REXDATA
END
It's been awhile since I've been doing MODIFY Procedures, so this
may be completely offbase, but it might have a shot.
Let me know. Good Luck!
Mike
| |||||
| 245.2 | TP | MILPND::MADDEN | Thu Jul 27 1989 14:13 | 10 | |
It appears that Cost_ctr and function code (L60F) are in the
transaction file, so can you MATCH CC
ON NOMATCH INCLUDE (OR REJECT IF YOU
DON'T WANT NEW CC'S)
ON MATCH CONTINUE
MATCH CHILDKEY
ON NOMATCH INCLUDE
ON MATCH UPDATE L60F
| |||||
| 245.3 | No luck yet.... | FDCV06::OGRADY | George - ISWS - 262-8665/223-3890 | Thu Jul 27 1989 14:58 | 17 |
.1 I tried it, the results is the 1st transaction is posted/rejected
to all cost centers. Closer then I ever got!
.2 I can't match on cost center. Its blank. These functions need
to be applied to all cost centers with the child segment having
that function.
The problem can be worked around by associating a cost center with
each function record. This will cause my file to enlarge a bit.
There are logical work arounds *but* I'm a stubborn SOB and I *want*
FOCUS to handle the problem. Well, we'll keep on plodding along.
Keep the ideas coming!
gog
| |||||
| 245.4 | I pick 2 | FEISTY::TILLERY | Fri Jul 28 1989 12:29 | 10 | |
I agree with .2. If this is a cost center file, then there must
be a field populated with cost centers (or are you just now populating
the file?). If you are just now pop., then match on cost center
and include.
If I am way off base, how about posting one record and .mas of cc
file.
Jim
| |||||
| 245.5 | Offbase, I think :-) | FDCV06::OGRADY | George - ISWS - 262-8665/223-3890 | Mon Jul 31 1989 11:13 | 50 |
OK, here's the transactions:
0H 41ZT211001.2
0H 41ZT212000.2
0H 41ZT213009.7
FIXFORM L60F/2 CC/3 RT/1 RLIN/2 RG/2 RS/3 RPCT/5
Notice, I have blank cost centers. Logic says, post this data to
*all* cost centers with a function "0H".
So, if I have 20 cost centers with function "0H", I will post 60
transactions.
The cost center reference master:
FILENAME=CCREF ,SUFFIX=FOC,$
SEGNAME=CCSEG, SEGTYPE=S1,$
FIELDNAME=COST_CENTER ,ALIAS=CC ,FORMAT=A3 ,FIELDTYPE=I,$
FIELDNAME=REDBOOK_CODE ,ALIAS=RB ,FORMAT=A4 ,$
FIELDNAME=XL19_REGION ,ALIAS=XR ,FORMAT=A4 ,$
FIELDNAME=XL19_DIST ,ALIAS=XD ,FORMAT=A4 ,$
FIELDNAME=CCNAME ,ALIAS=NAME ,FORMAT=A20 ,$
FIELDNAME=CC_MANAGER ,ALIAS=MGR ,FORMAT=A20 ,$
FIELDNAME=L60_ROLLLOC ,ALIAS=RL ,FORMAT=A1 ,$
FIELDNAME=PLF_FUNCTION ,ALIAS=PF ,FORMAT=A1 ,$
FIELDNAME=PLF_DEPT ,ALIAS=PDPT ,FORMAT=A1 ,$
GROUP =BUS_DIST ,ALIAS=KEY ,FORMAT=A2 ,$
FIELDNAME=PLF_REG ,ALIAS=PR ,FORMAT=A1 ,$
FIELDNAME=PLF_DIS ,ALIAS=PDIS ,FORMAT=A1 ,$
FIELDNAME=SALES_AREA ,ALIAS=SA ,FORMAT=A1 ,$
FIELDNAME=ACT_INACT ,ALIAS=AIC ,FORMAT=A1 ,$
FIELDNAME=DEACT_D ,ALIAS=DACT ,FORMAT=A6MDY ,$
FIELDNAME=BOOK_CODE ,ALIAS=BKC ,FORMAT=A1 ,$
FIELDNAME=EXP_CODE ,ALIAS=EXPC ,FORMAT=A1 ,$
FIELDNAME=FAC_CODE ,ALIAS=FC ,FORMAT=A1 ,$
FIELDNAME=COST_OF_SAL ,ALIAS=CCSF ,FORMAT=A1 ,$
FIELDNAME=LEDGERCODE ,ALIAS=LED ,FORMAT=A3 ,$
SEGNAME=CCREX, SEGTYPE=S1 ,$
FIELDNAME=L60_FUNCT ,ALIAS=L60F ,FORMAT=A2 ,FIELDTYPE=I,$
FIELDNAME=REX_SEG ,ALIAS=RS ,FORMAT=A3 ,$
FIELDNAME=REX_LINE ,ALIAS=RLIN ,FORMAT=A2 ,$
FIELDNAME=REX_GEOG ,ALIAS=RG ,FORMAT=A2 ,$
FIELDNAME=REX_PCT ,ALIAS=RPCT ,FORMAT=D5.1 ,$
FIELDNAME=REX_TYPE ,ALIAS=RT ,FORMAT=A1 ,$
-gog
| |||||
| 245.6 | Not in my dictionary | FEISTY::TILLERY | Tue Aug 01 1989 08:44 | 6 | |
You can only have one occurance of L60_FUNCT per L60_FUNCT. (ie. one
0H per CC) In order to have more RPCT per a 0H function, you
would have to change your file desc.
Jim
| |||||
| 245.7 | FDCV06::OGRADY | George - ISWS - 262-8665/223-3890 | Wed Aug 02 1989 09:23 | 9 | |
�In order to have more RPCT per a 0H function, you
�would have to change your file desc.
How? Could you give me an example?
gog
| |||||
| 245.8 | change sequence of fields | FEISTY::TILLERY | Wed Aug 02 1989 09:55 | 10 | |
You could change the sequence of fields within the second seg. and
get what you want. I don't know what would make sense to you, but
an examply would be to make REX_SEG the primary key with L60_FUNCT
as the alternate. If REX_SEG is unique for each RPCT within each
L60_FUNCT, that's the monster you want.
Hope this helps,
jt
| |||||