update2webdb.p 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. DEFINE VARIABLE ii AS INTEGER NO-UNDO.
  2. /*
  3. FOR EACH benutzer:
  4. FIND users
  5. WHERE users.user_name = benutzer.benutzer NO-ERROR.
  6. IF NOT AVAILABLE users THEN
  7. DO:
  8. CREATE users.
  9. ASSIGN
  10. users.user_name = benutzer.benutzer.
  11. END.
  12. ASSIGN
  13. users.display_name = benutzer.anzeige
  14. users.ROLE = (IF benutzer.admin THEN 'admin' ELSE 'user')
  15. users.ACTIVE = TRUE
  16. users.language_id = benutzer.sprcd
  17. users.company = benutzer.firma
  18. .
  19. END.
  20. FOR EACH Sprache:
  21. FIaddresses.active addresses.additional_1 addresses.additional_2 addresses.address[1] addresses.address[2] addresses.address[3] addresses.address[4] addresses.address[5] addresses.address[6] addresses.address[7] addresses.address[8] addresses.address[9] addresses.address[10] addresses.address[11] addresses.address[12] addresses.address_display addresses.address_fix addresses.address_id addresses.address_title addresses.address_type addresses.Cd01 addresses.Cd02 addresses.Cd03 addresses.Cd04 addresses.Cd05 addresses.Cd06 addresses.Cd07 addresses.Cd08 addresses.Cd09 addresses.Cd10 addresses.Cd11 addresses.Cd12 addresses.Cd13 addresses.Cd14 addresses.Cd15 addresses.city addresses.company addresses.company_name_1 addresses.company_name_2 addresses.country_code addresses.created_at addresses.create_by addresses.e-mail addresses.fax addresses.first_name addresses.function addresses.homepage addresses.language_id addresses.lapproved addresses.last_name addresses.letter_salutation addresses.mobile_business addresses.mobile_private addresses.phone_business addresses.phone_private addresses.postal_code addresses.po_box addresses.remarks addresses.salutation_code addresses.search_field addresses.street addresses.street_no addresses.updated_at addresses.updated_by addresses.wordindexND LANGUAGES
  22. WHERE LANGUAGES.language_id = Sprache.Sprcd.
  23. IF NOT AVAILABLE LANGUAGES THEN
  24. DO:
  25. CREATE LANGUAGES.
  26. ASSIGN LANGUAGES.language_id = Sprache.Sprcd.
  27. END.
  28. ASSIGN
  29. LANGUAGES.LANGUAGE_name = Sprache.Bez.
  30. END.
  31. FOR EACH Mandant:
  32. FIND companies
  33. WHERE companies.company = Mandant.Firma.
  34. IF NOT AVAILABLE companies THEN
  35. DO:
  36. CREATE companies.
  37. ASSIGN companies.company = Mandant.Firma.
  38. END.
  39. ASSIGN
  40. companies.company_name = Mandant.NAME.
  41. END.
  42. FOR EACH Berecht:
  43. FIND userauthorization
  44. WHERE userauthorization.company = berecht.mandant
  45. AND userauthorization.user_name = berecht.benutzer
  46. AND userauthorization.program = berecht.programm NO-ERROR.
  47. IF NOT AVAILABLE userauthorization THEN
  48. DO:
  49. CREATE userauthorization.
  50. ASSIGN
  51. userauthorization.company = berecht.mandant
  52. userauthorization.user_name = berecht.benutzer
  53. userauthorization.program = berecht.programm.
  54. END.
  55. ASSIGN
  56. userauthorization.lcreate = berecht.pwe
  57. userauthorization.ldelete = berecht.pwl
  58. userauthorization.lquery = berecht.pwa
  59. userauthorization.lspecial = berecht.pws
  60. userauthorization.lupdate = berecht.pwm.
  61. END.
  62. */
  63. CURRENT-VALUE(masterdata_id) = 0.
  64. FOR EACH addresses:
  65. DELETE addresses.
  66. END.
  67. FOR EACH Adresse NO-LOCK WHERE Firma = '1000':
  68. CREATE addresses.
  69. ASSIGN addresses.address_id = NEXT-VALUE(masterdata_id).
  70. ASSIGN
  71. addresses.active = Adresse.aktiv
  72. addresses.additional_1 = Adresse.Zusatz1
  73. addresses.additional_2 = Adresse.Zusatz2
  74. addresses.address_display = Adresse.Anzeig_br
  75. addresses.address_fix = Adresse.AnschrFix
  76. addresses.address_title = Adresse.Titel
  77. addresses.address_type = Adresse.AdrArt
  78. addresses.Cd01 = Adresse.Cd01
  79. addresses.Cd02 = Adresse.Cd02
  80. addresses.Cd03 = Adresse.Cd03
  81. addresses.Cd04 = Adresse.Cd04
  82. addresses.Cd05 = Adresse.Cd05
  83. addresses.Cd06 = Adresse.Cd06
  84. addresses.Cd07 = Adresse.Cd07
  85. addresses.Cd08 = Adresse.Cd08
  86. addresses.Cd09 = Adresse.Cd09
  87. addresses.Cd10 = Adresse.Cd10
  88. addresses.Cd11 = Adresse.Cd11
  89. addresses.Cd12 = Adresse.Cd12
  90. addresses.Cd13 = Adresse.Cd13
  91. addresses.Cd14 = Adresse.Cd14
  92. addresses.Cd15 = Adresse.Cd15
  93. addresses.city = Adresse.Ort
  94. addresses.company = Adresse.Firma
  95. addresses.company_name_1 = Adresse.Firma1
  96. addresses.company_name_2 = Adresse.Firma2
  97. addresses.country_code = Adresse.Lkz
  98. addresses.created_at = Adresse.erfDat
  99. addresses.create_by = Adresse.erfSB
  100. addresses.e-mail = Adresse.Mail
  101. addresses.fax = Adresse.Tel-4
  102. addresses.first_name = Adresse.Vorname
  103. addresses.function = Adresse.Funktion
  104. addresses.homepage = Adresse.homepage
  105. addresses.language_id = Adresse.Sprcd
  106. addresses.lapproved = Adresse.lFreigabe
  107. addresses.last_name = Adresse.Name
  108. addresses.letter_salutation = Adresse.BriefAnr
  109. addresses.mobile_business = Adresse.Natel
  110. addresses.mobile_private = ''
  111. addresses.phone_business = Adresse.Tel-1
  112. addresses.phone_private = Adresse.Tel-2
  113. addresses.postal_code = Adresse.Plz
  114. addresses.po_box = Adresse.Postfach
  115. addresses.remarks = Adresse.Bem
  116. addresses.salutation_code = Adresse.Anrcd
  117. addresses.search_field = Adresse.Suchbe
  118. addresses.street = Adresse.Strasse
  119. addresses.street_no = ''
  120. addresses.updated_at = Adresse.MutDat
  121. addresses.updated_by = Adresse.MutSB
  122. addresses.wordindex = Adresse.WortIndex
  123. .
  124. DO ii = 1 TO 12:
  125. addresses.address[ii] = Adresse.Anschrift[ii].
  126. END.
  127. END.
  128. /* Aus ERP Curaden */
  129. /*
  130. FOR EACH Laender NO-LOCK:
  131. CREATE countries.
  132. ASSIGN
  133. countries.language_id = Sprcd
  134. countries.city_pos = LaSOrt
  135. countries.country_code = Lkz
  136. countries.country_code_iso = ISO_Code
  137. countries.country_code_pos = LaSLkz
  138. countries.country_name = Bezeichnung
  139. countries.postal_code_pos = LaSPlz
  140. countries.EU_country = EULand
  141. .
  142. END.
  143. FOR EACH salutations:
  144. DELETE salutations.
  145. END.
  146. FOR EACH Anrede NO-LOCK:
  147. CREATE salutations.
  148. ASSIGN
  149. salutations.language_id = Anrede.Sprcd
  150. salutations.letter_business = Anrede.Anr_Text_G
  151. salutations.letter_privat = Anrede.Anr_Text_P
  152. salutations.letterhead_business = Anrede.Anr_BK_G
  153. salutations.letterhead_privat = Anrede.Anr_BK_P
  154. salutations.salutation = Anrede.Anr_Anrede
  155. salutations.salutation_code = Anrede.Anrcd
  156. salutations.salutation_display = Anrede.Anr_Anzeige
  157. salutations.to_attention_of = Anrede.Anr_zhv
  158. .
  159. END.
  160. FOR EACH Orte NO-LOCK:
  161. CREATE cities.
  162. ASSIGN
  163. cities.country_code = Orte.Lkz
  164. cities.postal_code = orte.plz
  165. cities.city = Orte.Ort
  166. cities.wordindex = Orte.lkz + ' ' + orte.plz + ' ' + orte.ort.
  167. END.
  168. */