Suite

L'extrait d'outil d'ajout ne fonctionne pas dans Pyscripter ?


J'ai besoin d'ajouter deux shapefiles ensemble. L'outil d'ajout fonctionne dans les boîtes à outils ArcMap ET la fenêtre Python, mais il ne fonctionne pas lors de la copie de l'extrait de code python vers PyScripter. Il sera complètement exécuté mais ne produira pas de valeurs dans les champs (toutes les valeurs seront vides ou nulles).

Je suppose que cela a quelque chose à voir avec les objets FieldMapping() ?

import arcpy arcpy.env.overwriteOutput = True arcpy.env.workspace = r"C:UsersDocumentsArcGISDefault.gdb" tc = r"testing_append" changesshp = r"C:UsersgfrederickDocumentsScripts changes.shp" lyr1 = arcpy.MakeFeatureLayer_management(tc, "tc_lyr") lyr2 = arcpy.MakeFeatureLayer_management(changesshp, "change.lyr") arcpy.Append_management(lyr2, lyr1, schema_type="NO_TEST","RENUMNUM "RECORD" true false false 19 Double 10 18 ,First,#,changes_new,RECORDNUM,-1,-1;TAKENBY "TAKENBY" true false false 50 Texte 0 0 ,First,#,changes_new,TAKENBY,-1,-1;SETDATE " SETDATE" vrai vrai faux 8 Date 0 0 ,First,#,changes_new,SETDATE,-1,-1;SETYEAR "SETYEAR" vrai faux faux 4 Texte 0 0 ,First,#;MCD "MCD" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,MCD,-1,-1;RDPREFIX "RDPREFIX" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,RDPREFIX,-1,-1;ROUTE "ROUTE" vrai faux faux 19 Double 10 18 ,First,#,changes_new,ROUTE,-1,-1;ROAD "ROAD" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,ROAD,-1,-1;CNTD IR "CNTDIR" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,CNTDIR,-1,-1;FROMLMT "FROMLMT" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,FROMLMT,-1,- 1;TOLMT "TOLMT" vrai faux faux 50 Texte 0 0 ,First,#,changes_new,TOLMT,-1,-1;TYPE "TYPE" true false false 20 Texte 0 0 ,First,#,changes_new,TYPE,-1 ,-1;RDSUFFIX "RDSUFFIX" vrai faux faux 15 Texte 0 0 ,First,#,changes_new,RDSUFFIX,-1,-1;LATITUDE "LATITUDE" vrai faux faux 19 Double 8 18 ,First,#,changes_new,LATITUDE, -1,-1;LONGITUDE "LONGITUDE" vrai faux faux 19 Double 8 18 ,First,#,changes_new,LONGITUDE,-1,-1;FACTOR "FACTOR" vrai faux faux 19 Double 8 18 ,First,#,changes_new, FACTOR,-1,-1;AXLE "AXLE" vrai faux faux 19 Double 8 18 ,First,#,changes_new,AXLE,-1,-1;AADT "AADT" vrai faux faux 9 Long 0 9 ,First,#, changes_new,AADT,-1,-1;UPDATED "UPDATED" vrai vrai faux 8 Date 0 0 ,First,#;CO_NAME "CO_NAME" vrai faux faux 35 Texte 0 0 ,First,#;MUN_NAME "MUN_NAME" vrai faux faux 40 Texte 0 0 ,Premier,#""",)

Il y a un exemple de code :

import arcpy tc = r"tc.shp" changesshp = r"_changes.shp" fieldmapping = arcpy.FieldMap() fieldmapping.addTable(changesshp) arcpy.Append_management(changesshp, tc, "NO_TEST", fieldmapping) print('YAAASSSSS' )


Voir la vidéo: Ajout dune boite de texte dans une activité GeoGebra (Octobre 2021).