日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Enhanced ABAP Development with Core Data Services (CDS)

發布時間:2025/3/20 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Enhanced ABAP Development with Core Data Services (CDS) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Enhanced ABAP Development with Core Data Services (CDS)

How CDS Brings a Modern Data Modeling Approach to ABAP 前言: With the advent of SAP HANA, a new data modeling infrastructure called core data services (CDS) has been introduced by SAP to simplify how developers define semantically rich data models. Read on to learn the concepts behind CDS and how it works in ABAP development processes,?and walk through a step-by-step guide on using CDS with SAP’s development toolset. 實際案例:轉自某網站。

Data models are a cornerstone of application development. They provide a standardized method for defining and formatting database contents consistently across systems, enabling different applications to share the same data — reducing development costs, speeding time to market, and improving quality and performance.

Those familiar with application development in the ABAP world are no strangers to the traditional data modeling tools included with SAP NetWeaver Application Server (SAP NetWeaver AS) ABAP — in particular, the ABAP data dictionary (DDIC), which stores definitions of objects, such as database tables and views, that can be used in ABAP programs. And then along came SAP HANA and the new paradigm of pushing down data-intensive logic to the database layer.

To take advantage of SAP HANA for application development, SAP introduced a new data modeling infrastructure known as core data services (CDS). With CDS, data models are defined and consumed on the database rather than on the server. CDS also offers capabilities beyond the traditional data modeling tools, including support for conceptual modeling and relationship definitions, built-in functions, and extensions. Originally, CDS was available only in the design-time and runtime environment of SAP HANA. Now, the CDS concept is also fully implemented in?SAP NetWeaver AS ABAP, enabling developers to work in the ABAP layer with ABAP development tools while the code execution is pushed down to the database.

This article focuses on the ABAP implementation of CDS.1?It looks at the concepts behind CDS, and then walks you through a detailed example that demonstrates how CDS in ABAP works, and how CDS is supported during the ABAP development process by SAP’s ABAP development tools for Eclipse.

What Is CDS?

CDS is an infrastructure layer for defining semantically rich data models, which are represented as CDS views. In a very basic way, CDS allows developers to define entity types (such as orders, business partners, or products) and the semantic relationships between them, which correspond to foreign key relationships in traditional entity relationship (ER) models. CDS is defined using a SQL-based data definition language (DDL) that is based on standard SQL with some additional concepts, such as associations, which define the relationships between CDS views, and annotations, which direct the domain-specific use of CDS artifacts. Another example is expressions, which can be used in scenarios in which certain CDS attributes are considered as measures to be aggregated.

Similar to the role of the DDIC in the traditional ABAP world, data models based on CDS serve as central definitions that can be used in many different domains, such as transactional and analytical applications, to interact with data in the database in a unified way (see the sidebar "CDS in SAP Software" for more on how SAP itself is using CDS in its own applications). However, CDS data models go beyond the capabilities of the DDIC, which were typically limited to a transactional scope (think of traditional online transaction processing functionality). For example, in CDS, you can define views that aggregate and analyze data in a layered fashion, starting with basic views and then adding powerful views that combine the basic views. Another difference is the support for special operators such as UNION, which enables the combination of multiple select statements to return only one result set.

Originally, CDS was designed for native SAP HANA application development. It was introduced with support package stack (SPS) 06 for SAP HANA as part of SAP HANA extended application services (XS), an application server for SAP HANA that includes a runtime environment for native development. With SAP NetWeaver 7.4 SPS 05, the CDS concept was also fully implemented in SAP NetWeaver AS ABAP. While differences have evolved between the two variants — for example, SAP HANA-based CDS obviously operates on SAP HANA, while ABAP-based CDS operates on most major database platforms as well as SAP HANA, and each has a different type of repository for development objects — both variants pursue the same goal: to represent central data definitions as a common basis for application development of all kinds.


Each CDS variant is properly embedded into the particularities of the supported technology environment. With the ABAP variant, the integration of CDS artifacts into the ABAP stack is fairly straightforward. The artifacts are modeled and edited using the DDL editor tool within the Eclipse-based ABAP development tools for SAP NetWeaver (known as ABAP in Eclipse). CDS artifacts, like any other ABAP development object, are subject to the transport system within SAP NetWeaver AS ABAP so that they can easily be transported from a development system to quality assurance and production systems. CDS artifacts are stored in the DDIC and can be accessed in ABAP programs via Open SQL in the same manner as ordinary ABAP tables or views.

CDS in ABAP: A Step-by-Step Approach

Let’s see ABAP-based CDS in action in a real-world development scenario. Here, I’ll show you an example that demonstrates how to use CDS with SAP’s development toolset.

1. Start ABAP in Eclipse

First, you need to start ABAP in Eclipse, which is a plug-in tool for ABAP development that you install in your Eclipse workspace. (If you do not yet have a local installation of Eclipse, simply download the latest version — currently Mars — to your desktop.) SAP’s Eclipse-based plugins, including ABAP in Eclipse, are available from its tools update site (https://tools.hana.ondemand.com).

先安裝Eclipse,注意版本問題。

*-----------------------------------------------------------------------------------------------------------------------------------------------

SAP Development Tools for Eclipse - Mars Software Repository

This software repository URL?https://tools.hana.ondemand.com/mars?provides access to SAP Development Tools for?Eclipse Mars (4.5) Release.

It is intended to be used in the?Help > Install New Software?wizard of Eclipse. For more information about installing software, see the?Eclipse Platform Help.

If you have any problems installing the software, please check the document?SAP Development Tools for Eclipse Installation: FAQ and Known Issues.

The downloads are provided under the terms of the?SAP DEVELOPER LICENSE AGREEMENT.

Back to?SAP Development Tools for Eclipse home page.

*-----------------------------------------------------------------------------------------------------------------------------------------------

To start ABAP in Eclipse, open the Eclipse project explorer and switch to the ABAP development perspective. To begin development work, establish a connection to the ABAP back end by creating an ABAP project (in the example, M36_001_d002831_en). With this connection, you can create new ABAP repository artifacts, such as ABAP programs, classes, and, as in our example, CDS artifacts.

You can create these repository artifacts as local objects belonging to the $TMP package, but in this example we use an existing package called ZDEV201 to house the CDS artifact. Simply right-click on the package icon, and from the context menu select New > Other ABAP Repository Object (seeFigure 1).


Figure 1?— Create a new repository object

2. Create a New CDS View

In the New ABAP Repository Object pop-up, search for the DDL source editor and select it to launch the New DDL Source wizard (see?Figure 2). First, specify the basic properties of the view. In the example — which is a simple scenario based on SAP’s well-known Enterprise Procurement Model (EPM) demo model — we want to count open invoices that have not yet been paid by business partners. So we specify the technical name (ZDDLS_E2E_INV_COUNT_201) and some short text to describe the view (“CDS view: open invoice count”). The underlying package (ZDEV201) is assigned automatically.



Figure 2?— Specify the basic properties of the view

Note that one of the fundamental differences between CDS in native SAP HANA and CDS in ABAP lies in the view definition. In both the ABAP and SAP HANA scenarios, you begin your development work by creating views on top of existing database tables that are contained in the DDIC. With CDS in native SAP HANA, you must create the basic entity types that correspond to the DDIC tables as part of the CDS view definition. With CDS in ABAP, you can simply refer to any underlying DDIC table, view, or type from within the CDS view definition, avoiding the need to “duplicate” the DDIC table definitions on the CDS layer. In the ABAP scenario, the CDS definitions are considered DDIC artifacts and need to be activated like any other DDIC artifact, and when changes are made, their impact is propagated to dependent artifacts.

3. Assign a Transport Request

On the next screen of the New DDL Source wizard, assign a transport request for the view (see?Figure 3). After assigning the view’s DDL source to an existing ABAP package, either select an open transport request or create a new one, which you can use to keep track of the changes that make up your development tasks. This transport request can be bundled with tasks from other developers and later transported to a subsequent system for test and then production.


Figure 3?— Assign a transport request

?

There is no need to go to the lower levels of the underlying database (such as SAP HANA) to manage the transport of CDS artifacts. All changes and transports are managed in the ABAP layer end to end.

4. Select a Template for the CDS View

The last screen of the New DDL Source wizard (Figure 4) offers a selection of templates for creating a CDS view, including a display of the default syntax provided with each. There is a template for a basic view; templates for building views with more advanced features (such as joins, associations, and parameters); and a template for extending a view (by adding fields, for instance). For the example, we choose the basic view template.


Figure 4?— Select the basic view template

?

The templates include placeholders for code that you fill in step by step. If you later discover the need to change or extend the nature of your CDS view, you can always change the source code directly in the DDL editor and freely edit all parts of it as needed. This is particularly helpful if you want to copy portions of the source code from example code, for instance.

5. Complete the Coding for the View Definition

After selecting the template and clicking on Finish, you are ready to fill the placeholders provided by the template to complete the definition of our view ZDDLS_E2E_INV_COUNT_201 (see?Figure 5). Open the DDL editor — which is a source code editor that offers very rich context-sensitive code completion capabilities — from the project perspective in the Eclipse project explorer via the context menu.


Figure 5?— Define the view in the DDL editor

?

First, specify an ABAP repository name for the view — ZV_INVCNT_201 in the example. The text label and view name are filled in automatically based on the information entered when specifying the basic properties of the view. Then specify the target data source for the invoice count. The underlying base table to be used as the target data source is named sepm_sddl_so_invoice_header (referenced as “inv”) but with the code completion functionality included with CDS, you don’t have to remember long names like these — you can simply start typing a prefix, such as sepm_sddl_so, and all matching base tables are displayed in a list, where you can view the details of each table (such as fields and their types) and select the table you want.

You can view the details of any of the syntactical elements that make up a CDS view definition on the fly by pressing the F2 key. The tooltip pop-up shows all the attributes, the corresponding data elements and types, and the associations (relationships) between the element and other tables or views, including their cardinality. For instance, in the example, the tooltip pop-up shows that the invoice header table contains a number of associations, including an association with a buyer table. With the tooltip functionality, there is no need to navigate deeply inside the DDIC — all of the relevant information is visible in one place.

6. Add Any Associations

For the view to count the number of open invoices, it needs to collect information about the buyer, such as the customer ID and name. To enable this, navigate along the association between the view’s underlying invoice header table and the buyer table, which is syntactically facilitated by a path expression separated by dots. To add the association to the view definition, you type a reference to the invoice header table (“inv”) followed by a dot (see?Figure 6). A list of available attributes, including associations, appears once you have typed the dot.


Figure 6?— Add an association to a table to collect information

?

Select “buyer” to add the association to sepm_sddl_businesspartner, which is a view that encapsulates the buyer table, to the view definition, and then add another dot to display the columns available in the “buyer” view (see?Figure 7). Add the columns you need to count the open invoices: business_partner_id, company_name, and address_key.?Figure 8?shows the completed code.


Figure 7?— Define the association


Figure 8?— The completed view definition

?

7. Execute the Code and View the Results

With CDS, you can activate and test your code right away by pressing the F8 key, which immediately previews the results in the data browser (see?Figure 9).


Figure 9?— The result set previewed in the data browser

?

Additional Options for Refining CDS Views

Let’s look at a few different ways you can fine-tune a CDS view to get the result set that best meets your needs.

Using Aggregation and Grouping

In the example scenario, the result set includes all business partners, not just the ones that have not yet paid their invoices. We can refine the results by manually adding a counter in the source code (see?Figure 10).


Figure 10?— Add a counter to the view to refine the result set

?

The count function requires a?group by?clause, however, which is missing from our source code. Using the quick-fix capabilities of Eclipse, we can add the missing?group by?clause with a single click. Click on the highlighted select statement and choose Add Group by Clause, which automatically inserts thegroup by?clause containing the elements you defined for the count (see?Figure 11). To restrict the result set, we manually add a simple?where?clause that returns results with a payment status other than “P” for paid (see?Figure 12).

雙擊前方的錯誤標記,或者使用快捷鍵填充Group By


Figure 11?— Add a group by clause to the counter


Figure 12?— Add a simple where clause to restrict the results

?

Now you can rerun the CDS view by pressing the F8 key, which reveals that the result set of the view is still raw — it contains address keys, which are GUIDs pointing to address records, when the actual city and street names would be more useful (see?Figure 13).


Figure 13?— The result set returned by the modified view definition

?

Using View Hierarchies and Associations

To show the city and street names in the result set, instead of the GUIDs pointing to address records, define a second CDS view that declares an association to the addresses of the business partners.

First, create another view called Zddls_E2e_Cust_Classify_201 in the ZDEV201 package, as described previously (see?Figure 14). Specify the basic properties of the view in the New DDL Source wizard, such as the technical name (ZDDLS_E2E_CUST_CLASSIFY_201) and some short text to describe the view (“CDS view: customer classification”).


Figure 14?— Create a second view to tailor the result set display

?

On the transport request screen (Figure 15), assign the newly created view to the open development request, and on the view template screen (Figure 16), choose Define View with Association. The syntax for this is slightly more complicated — the association contains an “on” condition, which is similar to a join operation.


Figure 15?— Assign a transport request for the second view


Figure 16?— Select the view with an association template

?

After selecting the template, open the DDL editor to complete the view definition. As with the first view, specify an ABAP repository name for the corresponding ABAP view (ZV_CUSTCLSFY_201 in the example). Again, the text label and view name are filled in automatically. Then specify a data source for the view, which is the first view created in this example (Zddls_E2e_Inv_Count_201), along with a target data source for the association created by the template. As before, pick a data source with the aid of the code completion functionality by typing the prefix sepm_sddl and selecting sepm_sddl_address (referenced as “_address”) from the matching items (seeFigure 17).


Figure 17?— Define the view and its association in the DDL editor

?

Next, fill out the “on” condition defining the source and target columns that are connected by the association. For the source, specify the first view Zddls_E2e_Inv_Count_201 and select address_key from the displayed list of available columns (see?Figure 18). For the target, specify the target data source (referenced as “_address”) for the association and select the corresponding address_key from the displayed list of available columns (seeFigure 19).


Figure 18?— Define the source for the association


Figure 19?— Define the target for the association

?

Using View Fields and Expressions

The next step is to define the view fields. The system tells you that the address_key column needs to be part of the view’s signature (because it is the link between the two views), so quickly add it by typing the prefix “ad” and using the code completion functionality (see?Figure 20). Likewise, add customer ID and customer name.?Figure 21?shows the completed definition of the view fields for the association.


Figure 20?— Define the view fields for the association


Figure 21?— The completed definition of the view fields for the association


Finally, to demonstrate the versatility of CDS, let’s add a calculated field that is based on conditions that need to be met. To define this field, manually add a case expression (see?Figure 22). The completed case expression for the example (Figure 23) delivers a category field that assigns a certain value depending on the number of open invoices: “C” for less than 5,000; “D” for between 5,000 and 10,000; and “S” for more than 10,000.


Figure 22?— Add a case expression to enable a calculated field

Figure 23?— The completed case expression

Lastly, add view fields that contain address information by specifying the target data source — “_address” (see?Figure 24) — and then selecting country, street, city, and postal code from the list of available columns (see?Figure 25).


Figure 24?— Specify the data source for the view fields


Figure 25?— Specify the view fields to display in the result set

?

Figure 26?shows the completed code.


Figure 26?— The refined view definition

?

Viewing the Refined Results

Activate and run the view, which displays the results shown in?Figure 27. As you can see, all of the refinements are reflected in the data browser.


Figure 27?— The result set returned by the refined view definition

?

The association details defined in the DDL editor are also integrated into the data browser. As in the DDL editor, you can navigate along the various associations, meaning that you can select a row and view a list of associations, such as address (see?Figure 28). Selecting an association will display the resulting record that is referred to by the association (see?Figure 29), which can be used for testing and analysis.


Figure 28?— Navigating along an association in the data browser


Figure 29?— Displaying the record referred to by the association in the data browser

?

Figure 30?shows our completed CDS artifacts in the Eclipse project explorer.


Figure 30?— The completed CDS artifacts in the Eclipse project explorer


Summary

SAP NetWeaver 7.4 brings the CDS concept introduced for native SAP HANA development to the ABAP development world. Powerful CDS functions such as associations and annotations are fully integrated into ABAP in Eclipse, and assist developers at each step of the definition?process. And since CDS is executed at runtime directly on the database layer, it facilitates the code pushdown paradigm pioneered by SAP HANA right from the beginning. With these features on hand — along with the CDS enhancements included in the upcoming 7.5 release of SAP NetWeaver2?— developers will have the tools they need to succeed in a modern business landscape.


Shortcut Key


Create By :Xiuxianhai


總結

以上是生活随笔為你收集整理的Enhanced ABAP Development with Core Data Services (CDS)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

蜜桃视频在线观看一区 | japanesexxxhd奶水 91在线精品一区二区 | 亚洲精品视频免费看 | 亚洲每日更新 | 日韩爱爱网站 | 一二三精品视频 | 99精品国自产在线 | 国产不卡av在线播放 | 久久国产手机看片 | 玖玖在线精品 | 久久久精品成人 | 99色精品视频 | 成人在线播放免费观看 | 超碰在线人人97 | 97精品超碰一区二区三区 | 91资源在线免费观看 | 久久国产一二区 | 国产免费作爱视频 | 五月婷婷深开心 | 亚洲一区二区三区在线看 | 国产精品久久久久久久久毛片 | 91成人小视频 | 日韩一二三区不卡 | 国产精品小视频网站 | 国产在线欧美日韩 | 精品久久影院 | 又黄又爽又无遮挡免费的网站 | 亚洲国产精品久久久久 | 亚洲国产成人精品在线 | 成人欧美亚洲 | 日韩av在线小说 | www黄色com | 天天骚夜夜操 | 精品一二区 | 欧美乱熟臀69xxxxxx | a黄色一级片| 亚洲女同ⅹxx女同tv | 美女视频黄免费的 | 久久午夜精品视频 | 天天色天天射天天干 | 九九免费在线看完整版 | 亚洲国产精品传媒在线观看 | 久久99精品一区二区三区三区 | 亚洲国产影院av久久久久 | 在线观看色网 | 免费福利片| 亚洲精品视频在线免费 | 天天综合网天天 | 欧美精品久久人人躁人人爽 | www狠狠操| 毛片888| 在线观看黄 | 色噜噜狠狠狠狠色综合 | 中文字幕日韩国产 | 欧洲亚洲国产视频 | 色网av| 日韩美在线观看 | 91色一区二区三区 | 国产黄a三级三级三级三级三级 | 国内精品久久久久影院一蜜桃 | 中文免费观看 | 韩国av一区二区三区 | 91精品国产高清 | 国产精品入口麻豆 | 九九国产视频 | 国产成人一区二区三区久久精品 | 亚洲精品免费观看视频 | 精品国产乱码 | 婷婷干五月 | 久久久综合 | 狠狠色噜噜狠狠狠狠2022 | 久久综合激情 | 久久综合福利 | 国产短视频在线播放 | 免费三级网| 日韩免费看视频 | 亚洲综合色激情五月 | 成人欧美一区二区三区在线观看 | 亚洲国产精品视频在线观看 | 成人免费在线播放视频 | 久久久久久久网站 | 最近中文字幕免费 | 51久久成人国产精品麻豆 | 97免费在线视频 | 免费av网站在线看 | 久久免费国产精品 | 四虎影视成人永久免费观看视频 | 免费观看mv大片高清 | 国产精品 日本 | 久久蜜臀av | 五月婷婷在线观看视频 | 在线看的av网站 | 国产色久 | 久久爽久久爽久久av东京爽 | 免费观看黄色12片一级视频 | 日韩精品在线免费观看 | 91九色蝌蚪在线 | 日本高清xxxx | 久久激情视频 久久 | 黄视频色网站 | 国产精品第三页 | 国产va精品免费观看 | 天天天天爱天天躁 | 三级黄色免费 | 国产不卡在线观看视频 | 国产群p视频 | 高清一区二区 | 久久久精品久久日韩一区综合 | 欧美做受高潮1 | 91传媒在线看 | 国产三级精品在线 | 一区二区视频播放 | 国产一级免费av | 国产视频精品久久 | 99国产精品免费网站 | 97视频免费| 天天躁天天狠天天透 | 欧美 日韩 国产 中文字幕 | 久久九九精品 | 天天操夜夜操 | 久久免费99 | 免费黄色激情视频 | 亚洲不卡123 | 亚州视频在线 | 日韩精品一区二区三区免费视频观看 | 国产日韩精品一区二区在线观看播放 | 色婷婷在线视频 | 久久一区二区三区四区 | 色婷av| 亚洲人成影院在线 | 99热最新| 狠狠色噜噜狠狠狠合久 | 国产v亚洲v| 天天在线操 | 国产精品一区免费在线观看 | 在线观看黄网站 | 欧美另类sm图片 | 国产精品成人一区二区 | 欧美 日韩 成人 | 日韩精品视频免费看 | 国产高清av| 国产一级大片免费看 | 日本精品视频在线 | 国产精品资源在线 | 色吧久久 | 99国产在线 | 91麻豆看国产在线紧急地址 | 欧美日韩国产mv | 99视频在线看 | 黄色特级毛片 | 日韩电影在线观看一区二区 | 国产又粗又长的视频 | 日本一区二区三区免费看 | 麻豆影视在线免费观看 | 一区二区精品在线视频 | 精品夜夜嗨av一区二区三区 | 久久精品国亚洲 | 综合久久久久 | 欧美极度另类性三渗透 | 五月婷婷伊人网 | 免费看的黄色录像 | 国产精品久久久久久久久久久久午夜 | 久亚洲 | 狠狠干天天色 | 国产日韩欧美在线观看视频 | 国产高清在线视频 | wwwwwww黄 | 综合色爱| 色噜噜狠狠狠狠色综合久不 | 久久久久久久99精品免费观看 | 欧美日韩高清在线 | 91免费观看视频在线 | 91麻豆网 | 99视频精品免费观看, | 色吊丝av中文字幕 | 色综久久 | 国产一区二区三区高清播放 | 69久久久久久久 | 热久久99这里有精品 | 久久精品99国产精品 | 成人高清av在线 | 国产精品 日韩精品 | 国产精品免费观看国产网曝瓜 | 黄色成人在线 | 日本黄色片一区二区 | 国产欧美日韩精品一区二区免费 | 成人高清在线观看 | 日韩精品欧美专区 | 国产免费视频一区二区裸体 | 亚洲国产精品va在线看黑人动漫 | 日本三级久久 | 亚洲免费小视频 | 日批网站免费观看 | 色婷婷www | 天干啦夜天干天干在线线 | 国产精品一区二区久久国产 | 免费高清在线观看成人 | 精品99久久| 一区免费视频 | 黄色大片日本 | 亚洲美女免费精品视频在线观看 | 亚洲免费专区 | 国产免费观看久久 | 综合网天天射 | 国产精品免费久久久久久 | 国产成人精品在线观看 | 天天激情 | 在线观看中文字幕第一页 | 黄色一级大片在线观看 | 欧美一区二区三区特黄 | 尤物九九久久国产精品的分类 | 国产高清综合 | 精品亚洲午夜久久久久91 | 久草久草视频 | 最近中文字幕免费av | 国产精品久久久久久久电影 | 在线视频麻豆 | 久久精品小视频 | 91激情小视频 | 9久久精品 | 一区二区三区电影在线播 | 久久艹影院 | 亚洲蜜桃在线 | 久久综合福利 | 在线看国产视频 | 在线观看视频免费播放 | 干 操 插| 99精品免费在线观看 | 国产91精品一区二区麻豆网站 | 久久经典国产视频 | 日日碰狠狠添天天爽超碰97久久 | 国产精品美乳一区二区免费 | 精品国产一区二区三区在线 | 黄av免费在线观看 | 亚洲精品字幕在线 | 9热精品| 国产91在线免费视频 | 免费亚洲成人 | 久久视奸 | 国语自产偷拍精品视频偷 | 免费成人黄色av | 狠狠网亚洲精品 | 尤物九九久久国产精品的分类 | 久久九九精品 | 在线观看免费日韩 | 国产一区欧美在线 | 美女一级毛片视频 | 中文字幕在线播放日韩 | 久久一区二区免费视频 | 九色91福利 | 亚洲少妇影院 | av成人免费在线观看 | 91精品国产自产老师啪 | 国产高清一区二区 | 18久久久久久 | 久久久久亚洲精品国产 | www.五月天色 | 9999精品免费视频 | 色五月成人 | 欧美国产精品一区二区 | 久久久高清免费视频 | 综合天天网 | 日韩理论片 | 国产999精品久久久久久 | a电影免费看 | 亚洲精品色视频 | 观看免费av| www.黄色片网站 | 久草网视频在线观看 | 波多野结衣视频一区 | 成人黄大片| 日本精品久久 | 色视频网站在线观看一=区 a视频免费在线观看 | 中文字幕在线观看亚洲 | 91视频免费观看 | 天天天综合 | 最近最新中文字幕视频 | 五月天色站 | 国产在线观看,日本 | 91九色在线观看视频 | 免费色视频网址 | 日韩av黄| 精品在线一区二区三区 | 精品免费在线视频 | 色www免费视频 | 97人人爽| 国产传媒中文字幕 | 激情五月综合 | 91黄色免费网站 | 日本 在线 视频 中文 有码 | 国产女人18毛片水真多18精品 | 国产一卡二卡四卡国 | 午夜久久福利 | 国产精品永久免费在线 | 久久久午夜影院 | 亚洲国产精久久久久久久 | 欧美巨乳波霸 | 99国内精品久久久久久久 | 久久久男人的天堂 | 91av官网| 久久久久久久久毛片精品 | 亚洲视频在线免费看 | 婷婷激情五月 | 久久久国产精品麻豆 | 粉嫩av一区二区三区入口 | 色网站免费在线观看 | 色视频一区 | 日韩精品一区二区三区电影 | 国产精品美女久久久久久免费 | 日韩av播放在线 | 国产精品免费小视频 | 久久精品电影院 | 99精品视频免费在线观看 | 日韩精品一二三 | 91精品黄色 | 国产区在线视频 | 一区二区三区在线影院 | 久草久草视频 | 久久国产区 | 亚洲国内精品视频 | 日韩久久在线 | 夜夜高潮夜夜爽国产伦精品 | 日韩成人精品一区二区三区 | 日韩福利在线观看 | 成人网在线免费视频 | 国产精品免费看 | 中文字幕日韩在线播放 | 亚洲免费在线视频 | 欧美激情va永久在线播放 | 国产精品久久久久久久午夜 | 99视频 | 久操中文字幕在线观看 | 狠狠色噜噜狠狠 | 久久免费视频在线观看6 | av解说在线观看 | 久久激五月天综合精品 | 久草在线免费看视频 | 国产亚洲精品久久久久久久久久 | 在线一区电影 | 成人资源在线观看 | 日韩精品电影在线播放 | 波多野结衣电影一区 | 欧美三级高清 | 在线免费高清一区二区三区 | www178ccom视频在线| 日韩在线视频免费播放 | 欧美一区二区三区在线 | 国产视频精品久久 | 国产午夜精品在线 | 77国产精品| 美女久久 | av在线免费播放网站 | 韩国精品一区二区三区六区色诱 | 免费a视频 | 丁香六月婷婷激情 | 国产中文字幕三区 | www.日日操.com| 精品国产精品久久一区免费式 | 免费韩国av | 日韩在线免费视频观看 | 久保带人 | 99在线观看视频网站 | 一区中文字幕 | 色av婷婷 | 一本一本久久a久久精品综合小说 | 国产亚洲精品女人久久久久久 | 国际精品久久 | 999久久久免费精品国产 | 亚洲免费在线观看视频 | 黄色a视频免费 | 成人网444ppp| 久久国产精品99精国产 | 2021国产精品视频 | 久草在线最新视频 | 伊人久久国产精品 | 国产又黄又猛又粗 | 五月激情电影 | 亚洲日本va午夜在线影院 | 国产99精品 | 国产精品 亚洲精品 | 日日操狠狠干 | 美国人与动物xxxx | 国产亚洲精品久久久久久 | 久久国产网| 99精品视频在线免费观看 | 中文字幕精品一区二区三区电影 | 国产精品美女久久久久久2018 | av成人免费| 国产成人精品一区二区三区免费 | 麻豆av一区二区三区在线观看 | 日韩欧美高清在线观看 | 国产一区二区日本 | 日韩激情视频在线观看 | 色999视频| 最新精品视频在线 | 国产精品视频最多的网站 | 视频一区二区国产 | 婷婷伊人综合亚洲综合网 | 超碰九九| 91免费试看 | 亚洲毛片在线观看. | 五月天高清欧美mv | 国产欧美日韩一区 | 久久激情五月丁香伊人 | 高清色免费| 成年人在线免费看片 | 久久99久久99精品免费看小说 | 国产黄色网 | 久久国语露脸国产精品电影 | av免费观看网址 | 色91av| 国内少妇自拍视频一区 | 日韩精品免费一线在线观看 | 五月天高清欧美mv | 欧美一级裸体视频 | 久久av一区二区三区亚洲 | 中文在线免费观看 | 婷婷视频在线 | 亚洲成人av电影 | 精品国产1区 | 免费av网址在线观看 | 免费av高清 | 国产精品中文字幕在线观看 | 国产尤物在线 | 夜夜躁日日躁狠狠久久88av | 在线色亚洲 | 日本精品久久久久 | 久久免费视频在线 | 一区二区不卡视频在线观看 | 日本在线中文在线 | 免费日p视频| 四虎成人精品在永久免费 | 精品一区二区影视 | 又爽又黄在线观看 | 黄色精品一区 | 日日插日日干 | 久久久久久久免费观看 | 探花视频在线观看免费版 | 国产高清在线免费观看 | 日韩精品免费一区二区 | 久久久久久久久久久久久久免费看 | 激情久久久久 | 91一区啪爱嗯打偷拍欧美 | 午夜国产在线观看 | 天天插天天干 | 精品国产一区二区在线 | 国产1区2区3区精品美女 | 久草精品视频在线看网站免费 | 天天操夜夜爱 | 在线 国产 亚洲 欧美 | 色综合久久久久网 | 国内三级在线 | 午夜久久视频 | 日韩视频在线不卡 | 在线观看日韩中文字幕 | 西西44人体做爰大胆视频 | 亚洲专区路线二 | 91在线免费播放视频 | 一级黄色片在线 | 欧美日韩精品国产 | 91精品视频在线免费观看 | 国产直播av| 日本不卡一区二区三区在线观看 | 高清精品在线 | 婷婷色六月天 | 麻豆视频91 | 中文字幕视频网站 | 日韩欧美在线免费观看 | 日韩激情综合 | 久久99精品久久久久久三级 | 又黄又爽又色无遮挡免费 | 美女免费视频一区 | 午夜性福利 | 毛片在线播放网址 | 欧美a级在线免费观看 | 精品国产一区二区三区久久久蜜臀 | 最新国产视频 | 国产午夜在线观看视频 | 91免费的视频在线播放 | 中文字幕a在线 | 999成人国产| 四虎国产精品成人免费影视 | 美女福利视频在线 | 精品99在线观看 | 天天爱av导航 | 日韩精品一区二区三区中文字幕 | 国产精品免费av | 精品亚洲视频在线观看 | 精品国自产在线观看 | 91污视频在线 | 国产一级在线观看 | 97精品久久 | 国产视频一二三 | 一区二区三区四区五区在线视频 | 日韩精品中文字幕在线不卡尤物 | 缴情综合网五月天 | 天天拍天天色 | www.夜夜干.com | 色播激情五月 | 亚洲精品欧洲精品 | 99在线看 | 日韩三级久久 | 国产成人久久久77777 | 在线观看中文 | 久精品在线观看 | 五月婷婷久 | 久久永久免费视频 | 日韩午夜三级 | 免费久久99精品国产婷婷六月 | av看片网| 色www精品视频在线观看 | 欧美整片sss | 麻豆一区二区 | 中文字幕高清 | 伊人五月婷 | 国产成人久久77777精品 | 亚洲精品系列 | 国产区在线视频 | 97视频在线观看成人 | 国产三级香港三韩国三级 | 蜜臀av网址| 亚洲视频 中文字幕 | 精品一区二区视频 | 久草av在线播放 | www.久久久| 国产黄色片免费 | 国产免费av一区二区三区 | 亚洲视频,欧洲视频 | 日韩av视屏在线观看 | 99精品久久久久久久久久综合 | 亚洲欧洲精品一区 | 亚洲视频免费在线看 | 九色在线| 久章操 | 最近最新中文字幕视频 | 亚洲最大av网站 | 丁香 婷婷 激情 | 狠狠干五月天 | 日日夜夜天天久久 | 97国产超碰在线 | 久草免费资源 | 久久综合色天天久久综合图片 | 亚洲综合少妇 | 国产视频一级 | 在线免费观看视频 | 中文字幕大全 | 国产精品久久久久久久电影 | 国产一级片久久 | 国产精品久久久久久久久久直播 | 98超碰人人 | 九九精品视频在线 | 一级欧美一级日韩 | 在线视频日韩精品 | 色婷婷精品 | 久久久久久久久久久久亚洲 | 又黄又爽的免费高潮视频 | 中文日韩在线 | 久久都是精品 | 欧美日韩国产免费视频 | 日日爽夜夜操 | 日韩欧美国产免费播放 | 亚洲欧美观看 | 人人模人人爽 | 亚洲成人999 | 中文字幕在线观看视频网站 | 玖玖在线观看视频 | 在线观看视频97 | 国产手机在线观看 | 888av| 欧美高清成人 | 狠狠操影视 | 欧美aaa大片 | 日韩久久视频 | 美女精品网站 | 久草在线观看视频免费 | 综合久久久久久久久 | 成人黄色大片在线免费观看 | 深爱激情开心 | 日韩一区二区三区在线观看 | 操操操com | 中文av在线免费观看 | 国产一区二区手机在线观看 | 中文一区在线 | 亚洲毛片视频 | 亚洲丝袜一区二区 | 特级免费毛片 | 欧美成人免费在线 | 免费在线播放视频 | 国产高清黄 | 国产精品99久久久久久久久久久久 | 青青河边草免费观看 | 国产亚洲成av人片在线观看桃 | 欧美做受高潮 | 在线激情小视频 | 国产99久久九九精品免费 | 免费99| 国产精品高潮在线观看 | 亚洲国产欧美一区二区三区丁香婷 | 狂野欧美激情性xxxx | 午夜久久 | 欧美成人精品在线 | 亚洲精品一区二区三区新线路 | 一本一道波多野毛片中文在线 | 中文字幕频道 | 日韩羞羞 | 亚洲一区二区三区在线看 | 性色av免费观看 | 97精品在线| 色婷婷久久一区二区 | 在线精品视频免费播放 | 高清av网站 | 99热国产在线观看 | 91精品国产三级a在线观看 | 久久免费资源 | 黄色大全免费观看 | 午夜在线资源 | 国产不卡av在线 | 日韩欧美国产激情在线播放 | 久久久久久激情 | 黄色小说在线免费观看 | av网在线观看 | 欧美男女爱爱视频 | 在线中文字母电影观看 | 欧美黑吊大战白妞欧美 | av中文字幕在线观看网站 | 久久午夜精品视频 | 夜夜操天天操 | 亚洲免费永久精品国产 | 亚洲欧美视频在线观看 | 亚洲精品久久久蜜臀下载官网 | 中文字幕婷婷 | 国产一区二区三区免费观看视频 | 亚洲电影院 | 中文字幕久久亚洲 | 亚洲国产偷 | 国产乱对白刺激视频在线观看女王 | 五月天久久综合 | 国产99久久久精品 | 婷婷五月情 | av久久在线 | 亚州视频在线 | 久久久久久久毛片 | 麻豆激情电影 | 五月婷婷在线综合 | 中文字幕一区二区三区视频 | 国产福利专区 | 国产成人亚洲在线观看 | 在线99| 久久成视频 | 欧美精品在线视频观看 | 亚洲天堂网站视频 | 久久久久麻豆v国产 | 成人午夜精品福利免费 | 丁香在线观看完整电影视频 | 丁香激情视频 | 国产视频亚洲精品 | 久久久久一区二区三区四区 | 国产三级视频 | 成人四虎 | 精品久久久久久国产91 | 亚洲黄色网络 | 最近最新中文字幕视频 | 亚洲女欲精品久久久久久久18 | 五月天高清欧美mv | 午夜精品电影一区二区在线 | 人人爽爽人人 | 成人黄色大片在线免费观看 | 操操操日日日干干干 | 天天搞天天干 | 婷婷丁香花五月天 | 中文字幕91 | 亚洲精品白浆高清久久久久久 | 在线播放亚洲激情 | 91久久国产露脸精品国产闺蜜 | 五月婷婷天堂 | 天天五月天色 | 亚洲欧美一区二区三区孕妇写真 | 国产视频高清 | 欧美日韩国产精品一区二区三区 | 日韩美女黄色片 | 国产剧情在线一区 | 国产精品免费观看视频 | 又黄又爽的视频在线观看网站 | 久草在线99 | 99精品在线观看视频 | 伊人五月综合 | www.色午夜.com | 四虎5151久久欧美毛片 | 国产在线观看中文字幕 | 成人黄色大片在线免费观看 | 国产在线不卡精品 | 久久高视频 | 亚洲欧洲成人精品av97 | 久久综合五月天 | 日韩av不卡在线 | 久久久久成 | 国产一级片在线播放 | 狠狠躁天天躁 | 欧美一区在线看 | 欧美在线观看小视频 | 91av蜜桃| 色婷婷www| 1024手机在线看 | 成人在线观看网址 | 国产视频亚洲视频 | 日韩免费观看视频 | 丁香婷婷色综合亚洲电影 | 五月婷婷视频在线观看 | 午夜精品一区二区三区在线 | 免费看黄在线观看 | 91精品视频在线免费观看 | 天天操综合 | 九九热精品视频在线观看 | 成人a大片 | 91精品国产成人观看 | 99草视频 | 天天操夜夜操国产精品 | 丁香激情五月婷婷 | 国产精品成人在线 | 欧美大香线蕉线伊人久久 | 69精品视频在线观看 | 午夜三级福利 | 中文字幕一区二区三区乱码不卡 | 欧美成年性| 日韩在线不卡av | 91综合色 | 日韩最新在线 | 国产精品mv | 亚洲欧洲成人精品av97 | 免费成人结看片 | 97av超碰 | 91麻豆精品国产91久久久久久 | 狠狠操影视 | 99视频精品全国免费 | 免费看污黄网站 | 国产高清成人在线 | a级一a一级在线观看 | 天天摸天天舔 | 成人免费视频视频在线观看 免费 | www在线观看国产 | 国产精品久久久久久久妇 | 成人久久电影 | 久久久久久久99精品免费观看 | 亚洲国内精品在线 | 亚洲精品日韩一区二区电影 | 欧美日韩精品免费观看 | 成人在线观看免费视频 | 亚洲精品88欧美一区二区 | 97成人在线| 毛片网站免费在线观看 | 婷婷久久综合网 | 一本一道久久a久久精品蜜桃 | 国产91在线播放 | 国产精品久久av | 国产精品久久久久久久久久直播 | 日韩精品欧美专区 | 97国产超碰在线 | 亚洲五月六月 | 日本激情视频中文字幕 | 久久国产网站 | 九九视频网站 | 美女视频久久黄 | 一区二区三区在线免费 | 成人免费在线电影 | 久久精品国产一区二区三 | 久久久久免费视频 | 国产精品久久免费看 | 在线观看蜜桃视频 | 成片视频在线观看 | 久久亚洲免费视频 | 色妞色视频一区二区三区四区 | 亚洲综合成人婷婷小说 | 波多野结衣小视频 | 国产色影院 | 伊甸园av在线 | av免费电影在线观看 | 精品国产精品一区二区夜夜嗨 | 国产专区精品 | 精品在线观看一区二区 | 国产激情小视频在线观看 | 日韩电影中文,亚洲精品乱码 | 亚洲欧美日韩国产一区二区三区 | 国产精品嫩草影视久久久 | 日韩欧美电影在线 | 国产精品一区二区久久精品 | 国产福利精品一区二区 | 婷婷爱五月天 | 国产精品久久久久久久av电影 | 日本精品久久 | 色综合天天色 | 日本女人逼| 成人观看 | 久久艹中文字幕 | 久久国产系列 | 国产免费国产 | 国产三级久久久 | 在线小视频 | 欧美精品中文字幕亚洲专区 | 国产成人精品久久 | 最新成人av | 青青河边草免费观看完整版高清 | 久久国产免费看 | 国产小视频免费观看 | 精品国产乱码久久久久久1区二区 | 亚洲精品2区 | 精品国产一区二区三区不卡 | 久久久久久久久久久久久影院 | а天堂中文最新一区二区三区 | 国产精品中文久久久久久久 | 欧美日韩69 | 毛片精品免费在线观看 | 午夜久久成人 | 日韩免费视频线观看 | 中文字幕2021 | 中文字幕色站 | 精品亚洲视频在线观看 | 久久婷综合| 久久免费的视频 | 久久久精品日本 | 亚洲精品久久久久久久不卡四虎 | 欧美黑人巨大xxxxx | 国产一区免费观看 | 欧美性黑人 | 久久99免费观看 | 西西444www高清大胆 | a视频在线播放 | 日本高清中文字幕有码在线 | 精品国产诱惑 | 天天天天天天天操 | 欧美日韩不卡一区 | 亚洲最大成人免费网站 | 久久精品香蕉视频 | 中文一区二区三区在线观看 | 久久天| 亚洲成色777777在线观看影院 | 草久久影院 | 久草视频在线观 | 亚洲天堂网在线观看视频 | 午夜电影一区 | 超碰夜夜| 91九色综合 | 99热 精品在线 | 奇米影视在线99精品 | 色综合天天干 | 97在线观看免费高清 | 精品一区电影国产 | 99亚洲视频| 毛片一级免费一级 | 国产精品亚洲精品 | 狠狠色狠狠色综合日日小说 | 91精品国产91久久久久 | 欧美日韩不卡在线观看 | 成人动图| 超碰国产在线播放 | 九色视频网址 | 99久久一区| 日日日日 | 国产成人av网址 | 伊人亚洲综合 | 天天操夜夜想 | 国产精品www | 婷婷色网址 | 66av99精品福利视频在线 | 午夜在线资源 | 亚洲午夜电影网 | 色九九视频 | 亚洲欧美激情精品一区二区 | 久久免费在线观看视频 | 欧美久久久久久久 | 欧美一区影院 | www.香蕉视频在线观看 | 亚洲一区视频在线播放 | 超碰在线日本 | 激情欧美一区二区三区免费看 | 最新色站 | 国产黄视频在线观看 | 亚洲一区欧美激情 | 在线观看国产www | 欧美日韩不卡在线观看 | 新av在线| 久久这里只有精品视频首页 | 国产一级免费电影 | 国产亚洲欧美精品久久久久久 | 久草资源在线观看 | 日韩一区在线免费观看 | 亚洲资源| 99热亚洲精品 | 中文字幕中文中文字幕 | 色窝资源| 视频一区二区在线观看 | 国产 日韩 在线 亚洲 字幕 中文 | 国产中文字幕久久 | 国产馆在线播放 | 国产精品久久9 | 国产精品99爱 | 91av亚洲| 天堂av免费观看 | 91av在线国产 | 91大神电影| 亚洲欧美日韩国产精品一区午夜 | 天天做夜夜做 | 亚洲狠狠婷婷 | 日本mv大片欧洲mv大片 | 日本性动态图 | 精品久久久久一区二区国产 | 亚洲黄色在线 | 激情久久综合 | 爱色av.com| 一本色道久久综合亚洲二区三区 | 黄色av网站在线免费观看 | 综合色在线 | 免费观看一级 | 五月激情五月激情 | 成人av网站在线 | 激情开心色 | 在线电影中文字幕 | 97超碰在线久草超碰在线观看 | 国产成人亚洲精品自产在线 | 一级免费黄色 | 99精品在线看 | 成人国产精品久久久久久亚洲 | 97国产超碰| 91精品啪在线观看国产线免费 | 欧美另类高潮 | 日本三级国产 | 性色av一区二区三区在线观看 | 欧美国产精品一区二区 | 99精品久久久久久久久久综合 | 欧美国产精品一区二区 | 亚洲综合色丁香婷婷六月图片 | 婷婷色综| 高潮毛片无遮挡高清免费 | 亚洲国产婷婷 | 丰满少妇在线观看资源站 | 精品久久久久久久久久久久久久久久 | 99久久夜色精品国产亚洲 | 国产1级视频 | 日日插日日干 | 九热在线| 狠狠干网站| 91成人在线视频 | 久久亚洲欧美 | 97av在线视频 | 色视频在线免费观看 | 热久久电影| 97在线观看视频 | 国产精品va在线播放 | 黄色av电影在线观看 | 亚洲欧美国产视频 | 亚洲国产免费av | 丁香午夜婷婷 | 精品一区二区三区久久久 | www在线免费观看 | 最新超碰在线 | 九九一级片 | 国产69久久久欧美一级 | 一级一片免费观看 | av中文字幕在线观看网站 | 99精品久久99久久久久 | 亚洲国产日韩一区 | 成年人电影免费看 | 碰超在线 | 久久电影网站中文字幕 | 亚洲女人天堂成人av在线 | 欧洲激情在线 | 亚洲精品乱码久久 | 免费欧美高清视频 | 日韩欧美在线综合网 | 天天爱天天操天天干 | 亚洲综合情 | 日韩大片免费观看 | 色婷婷在线观看视频 | 99久久影视 | 在线色吧 | 亚洲午夜av久久乱码 | 欧美一级乱黄 | 亚洲黄色小说网 | 91精彩视频 | 97超碰在线久草超碰在线观看 | 黄色成人av在线 | 99亚洲精品在线 | 亚洲精品在线视频观看 | 中国一级特黄毛片大片久久 | 91精品国产九九九久久久亚洲 | 中文字幕网站视频在线 | 久久女教师 | 国产在线视频一区二区 | 操久久网| 免费av网址在线观看 | 天天操网址 | 中文字幕在线免费播放 | 激情 婷婷 | 亚洲欧美日韩国产精品一区午夜 | 国产精品18久久久久vr手机版特色 | 美女一二三区 | 国产精品久久在线观看 | 亚洲午夜精品在线观看 | 99久久精品国产网站 |