Columbia Escutcheon
Michigan DDBDP Conversion
          Path:  APIS  :  APIS Documentation  :  Metadata  :  Michigan Conversion    

FileMakerPro Scripts (Field Calculations) to Create DDBDP links from Michigan APIS Records

NB: Michigan APIS records have at least three separate data elements clusters in which references to the published PMich or OMich may appear: a) "Ser_Vol" + "Pg_No" (First publication) b) "Rep_Ser" + "Rep_Pg_No" (Republication) c) "Further rep" (Further republication; includes Collection, Volume and page number etc. in one field) All three of these locations have been used to build DDBDP references for PMich and OMich references. These references have been built automatically and may be more or less accurate depending on the citation used and the reduced linking syntax used for Project Perseus.



ex510_p

"cu510_dd | 1 | " & Case(Position(Ser_Vol, "PMich XIX", 1 , 1) = 1,"P.Mich.:19:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XVIII", 1 , 1) = 1,"P.Mich.:18:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XVII", 1 , 1) = 1,"P.Mich.:17:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XVI", 1 , 1) = 1,"P.Mich.:16:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XV", 1 , 1) = 1,"P.Mich.:15:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XIV", 1 , 1) = 1,"P.Mich.:14:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XIII", 1 , 1) = 1,"P.Mich.:13:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XII", 1 , 1) = 1,"P.Mich.:12:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich XI", 1 , 1) = 1,"P.Mich.:11:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich X", 1 , 1) = 1,"P.Mich.:10:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich IX", 1 , 1) = 1,"P.Mich.:9:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich VIII", 1 , 1) = 1,"P.Mich.:8:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich VII", 1 , 1) = 1,"P.Mich.:7:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich VI", 1 , 1) = 1,"P.Mich.:6:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich V", 1 , 1) = 1,"P.Mich.:5:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich IV", 1 , 1) =1,
If(TextToNum(Trim(Left(Pg_No,4)))<=225,"P.Mich.:4.1:","P.Mich.:4.2:")
& Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich III", 1 , 1) = 1,"P.Mich.:3:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich II", 1 , 1) = 1,"P.Mich.:2:" & Trim(Left(Pg_No,4)),
Position(Ser_Vol, "PMich I", 1 , 1) = 1,"P.Mich.:1:" & Trim(Left(Pg_No,4)))

==========================================================================
ex510_o

"cu510_dd | 1 | " & Case(Position(Ser_Vol,"OMich III",1,1) = 1,"O.Mich.:3:" & Trim(Pg_No), 
Position(Ser_Vol,"OMich II",1,1) = 1,"O.Mich.:2:" & Trim(Pg_No), 
Position(Ser_Vol,"OMich I",1,1) = 1,"O.Mich.:1:" & Trim(Pg_No))
==========================================================================
ex510_pRep

"cu510_dd | 2 | " & Case(Position(Rep_Ser, "PMich XIX", 1 , 1) = 1,"P.Mich.:19:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XVIII", 1 , 1) = 1,"P.Mich.:18:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XVII", 1 , 1) = 1,"P.Mich.:17:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XVI", 1 , 1) = 1,"P.Mich.:16:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XV", 1 , 1) = 1,"P.Mich.:15:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XIV", 1 , 1) = 1,"P.Mich.:14:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XIII", 1 , 1) = 1,"P.Mich.:13:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XII", 1 , 1) = 1,"P.Mich.:12:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich XI", 1 , 1) = 1,"P.Mich.:11:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich X", 1 , 1) = 1,"P.Mich.:10:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich IX", 1 , 1) = 1,"P.Mich.:9:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich VIII", 1 , 1) = 1,"P.Mich.:8:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich VII", 1 , 1) = 1,"P.Mich.:7:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich VI", 1 , 1) = 1,"P.Mich.:6:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich V", 1 , 1) = 1,"P.Mich.:5:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich IV", 1 , 1) = 1,
If(TextToNum(Trim(Left(Rep_Pg_No,4)))<=225,"P.Mich.:4.1:","P.Mich.:4.2:") & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich III", 1 , 1) = 1,"P.Mich.:3:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich II", 1 , 1) = 1,"P.Mich.:2:" & Trim(Left(Rep_Pg_No,4)),
Position(Rep_Ser, "PMich I", 1 , 1) = 1,"P.Mich.:1:" & Trim(Left(Rep_Pg_No,4)))
==========================================================================
ex510_oRep

"cu510_dd | 1 | " & Case(Position(Rep_Ser,"OMich III",1,1) = 1,"O.Mich.:3:" & Trim(Rep_Pg_No), 
Position(Rep_Ser,"OMich II",1,1) = 1,"O.Mich.:2:" & Trim(Rep_Pg_No), 
Position(Rep_Ser,"OMich I",1,1) = 1,"O.Mich.:1:" & Trim(Rep_Pg_No))

==========================================================================
ex510_pFur

Case(
Position(Further rep, "PMich XV", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:15:" & If(Position(Further rep,"pg_No",Position(Further rep, "PMich XV", 1 , 1),1) > 0,  Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich XV", 1 , 1),1)+6,4)),""), 

Position(Further rep, "PMich XIV", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:14:" & If(Position(Further rep,"pg_No",Position(Further rep, "PMich XIV", 1,1),1) > 0,  Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich XIV", 1 , 1),1)+6,4)),""),
 
Position(Further rep, "PMich XIII",1 , 1) > 0,"cu510_dd | 3 | P.Mich.:13:" & If(Position(Further rep,"pg_No",Position(Further rep, "PMich XIII", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich XIII",1 , 1),1)+6,4)),""),

Position(Further rep, "PMich XII", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:12:" & If(Position(Further rep,"pg_No",Position(Further rep, "PMich XII", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich XII", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich XI", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:11:" & If(Position(Further rep,"pg_No",Position(Further rep, "PMich XI", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich XI", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich X", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:10:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich X",1,1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich X", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich IX", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:9:"& 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich IX", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich IX", 1 , 1),1)+6,4)),"") ,

Position(Further rep, "PMich VIII", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:8:"& 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich VIII", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich VIII", 1 , 1),1)+6,4)),""), 

Position(Further rep, "PMich VII", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:7:"& 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich VII", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich VII", 1 , 1),1)+6,4)),"") ,

Position(Further rep, "PMich VI", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:6:"& 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich VI", 1 , 1),1) > 0, Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich VI", 1 , 1),1)+6,4)),"") ,

Position(Further rep, "PMich V", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:5:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich V", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich V", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich IV", 1 , 1) = 1, If(TextToNum(Trim(Left(Further rep,4)))<=225,"P.Mich.:4.1:","P.Mich.:4.2:") & If(Position(Further rep,"pg_No",Position(Further rep, "PMich IV", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich V", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich III", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:3:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich III", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich III", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich II", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:2:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich II", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich II", 1 , 1),1)+6,4)),""),

Position(Further rep, "PMich I", 1 , 1) > 0,"cu510_dd | 3 | P.Mich.:1:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "PMich I", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "PMich I", 1 , 1),1)+6,4)),"") )

==========================================================================
ex510_oFur

Case(
Position(Further rep, "OMich V", 1 , 1) > 0,"cu510_dd | 3 | O.Mich.:5:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "OMich V", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "0Mich V", 1 , 1),1)+6,4)),""),

Position(Further rep, "OMich IV", 1 , 1) > 0,"cu510_dd | 3 | O.Mich.:4:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "OMich 4", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "0Mich 4", 1 , 1),1)+6,4)),""),


Position(Further rep, "OMich III", 1 , 1) > 0,"cu510_dd | 3 | O.Mich.:3:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "OMich III", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "OMich III", 1 , 1),1)+6,4)),""),

Position(Further rep, "OMich II", 1 , 1) > 0,"cu510_dd | 3 | O.Mich.:2:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "OMich II", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "OMich II", 1 , 1),1)+6,4)),""),

Position(Further rep, "OMich I", 1 , 1) > 0,"cu510_dd | 3 | O.Mich.:1:" & 
If(Position(Further rep,"pg_No",Position(Further rep, "OMich I", 1 , 1),1) > 0, 
Trim(Middle(Further rep,Position(Further rep,"pg_No",Position(Further rep, "OMich I", 1 , 1),1)+6,4)),"") )


Columbia Libraries    Digital Program
Last revision: 03/28/01
© Columbia University