Skip to content

Commit

Permalink
README, transformations in XML, force interfaces to act as leaves
Browse files Browse the repository at this point in the history
  • Loading branch information
marcellourbani committed Nov 8, 2018
1 parent 44b8fb2 commit d26deab
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 7 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ABAP remote filesystem for visual studio code

This extension allows editing and activation of ABAP code on your server directly in Visual studio code.
It's still in its early stages, for now no transport selection is provided, save and activate does work for local objects
Doesn't allow to create objects yet, but does read/save/activate several object types

**WRITE SUPPORT IS EXPERIMANTAL USE AT YOUR OWN RISK**

Expand All @@ -13,22 +13,22 @@ Sadly [ABAPlint](https://marketplace.visualstudio.com/items?itemName=larshp.vsco

## Features

Connect to your SAP server using the ADT interface
Connect to your SAP server using the ADT interface, edit, save and activate files
The complete list of editable objects depends on your installation, on my local 7.51 works for:

- programs/includes
- function groups
- classes
- transformations

**Saved objects will be deactivated, this doesn't allow activation yet**
![anim](https://user-images.githubusercontent.com/2453277/48232926-30a78d80-e3ab-11e8-8a12-00844431f9af.gif)

## setup

Too early to publish as an extension, there's a compiled extension you can run from source or install from the command line with

```shell
code --install-extension vscode-abap-remote-fs-0.0.3.vsix
code --install-extension vscode-abap-remote-fs-0.1.0.vsix
```

The compiled file can be either downloaded from for the
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "vscode-abap-remote-fs",
"displayName": "vscode_abap_remote_fs",
"description": "Work on your ABAP code straight from the server",
"version": "0.0.3",
"version": "0.1.0",
"publisher": "murbani",
"author": {
"email": "[email protected]",
Expand Down
13 changes: 12 additions & 1 deletion src/abap/AbapObject.ts
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ export class AbapObject {
.then(pick("body"))
}

getExtension(): any {
getExtension(): string {
if (!this.isLeaf()) return ""
return this.sapguiOnly ? ".txt" : ".abap"
}
Expand Down Expand Up @@ -276,3 +276,14 @@ export class AbapObject {
}
}
}
export class AbapXmlObject extends AbapObject {
getExtension(): string {
if (!this.isLeaf()) return ""
return this.sapguiOnly ? ".txt" : ".xml"
}
}
export class AbapSimpleObject extends AbapObject {
isLeaf() {
return true
}
}
13 changes: 12 additions & 1 deletion src/abap/AbapObjectUtilities.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
import { AbapObject, AbapNodeComponentByCategory } from "./AbapObject"
import {
AbapObject,
AbapNodeComponentByCategory,
AbapSimpleObject,
AbapXmlObject
} from "./AbapObject"
import { NodeStructure, ObjectNode } from "../adt/AdtNodeStructParser"
import { selectMap } from "../functions"
import { AbapProgram } from "./AbapProgram"
Expand Down Expand Up @@ -61,6 +66,12 @@ export function abapObjectFromNode(node: ObjectNode): AbapObject {
case "CLAS/I":
objtype = AbapClassInclude
break
case "XSLT/VT":
objtype = AbapXmlObject
break
case "INTF/OI":
objtype = AbapSimpleObject
break
case "PROG/I":
case "FUGR/I":
objtype = AbapInclude
Expand Down

0 comments on commit d26deab

Please sign in to comment.